| 102 | } |
| 103 | |
| 104 | void BlMsf::WriteBlock(BlMsfBlock* block) |
| 105 | { |
| 106 | if (mAllocatedFileSize > mFileSize) |
| 107 | { |
| 108 | mFS.SetSizeFast(mAllocatedFileSize); |
| 109 | mFileSize = mAllocatedFileSize; |
| 110 | } |
| 111 | |
| 112 | int wantPos = block->mIdx * CV_BLOCK_SIZE; |
| 113 | if (wantPos > mFileSize) |
| 114 | { |
| 115 | mFS.SetSizeFast(wantPos); |
| 116 | mFileSize = wantPos; |
| 117 | } |
| 118 | |
| 119 | if (mFileSize == wantPos) |
| 120 | mFileSize = wantPos + CV_BLOCK_SIZE; |
| 121 | |
| 122 | mFS.SetPos(block->mIdx * CV_BLOCK_SIZE); |
| 123 | mFS.Write(block->mData, CV_BLOCK_SIZE); |
| 124 | delete block->mData; |
| 125 | block->mData = NULL; |
| 126 | } |
| 127 | |
| 128 | bool BlMsf::Create(const StringImpl& fileName) |
| 129 | { |
no test coverage detected