diff options
author | Chris Wilson <chris+github@qwirx.com> | 2007-04-28 20:42:45 +0000 |
---|---|---|
committer | Chris Wilson <chris+github@qwirx.com> | 2007-04-28 20:42:45 +0000 |
commit | 5939cfae21c84cc587bec541808ae121a3536737 (patch) | |
tree | 685cbd7024e733eae67bf7eb3850768ae9720eab | |
parent | 4f98aedc41c41afa7ed0388ec838b96829d0577f (diff) |
Fix bbackupd choosing an invalid (too large) block size for large files
(over 2GB) which will cause compare to fail: when rBlockSizeOut ==
BACKUP_FILE_MAX_BLOCK_SIZE we would have proceeded around the loop one
more time and doubled the block size again. (refs #2, refs #3)
-rw-r--r-- | lib/backupclient/BackupStoreFileEncodeStream.cpp | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/lib/backupclient/BackupStoreFileEncodeStream.cpp b/lib/backupclient/BackupStoreFileEncodeStream.cpp index cda18855..423c11a3 100644 --- a/lib/backupclient/BackupStoreFileEncodeStream.cpp +++ b/lib/backupclient/BackupStoreFileEncodeStream.cpp @@ -278,7 +278,7 @@ void BackupStoreFileEncodeStream::CalculateBlockSizes(int64_t DataSize, int64_t rNumBlocksOut = (DataSize + rBlockSizeOut - 1) / rBlockSizeOut; - } while(rBlockSizeOut <= BACKUP_FILE_MAX_BLOCK_SIZE && rNumBlocksOut > BACKUP_FILE_INCREASE_BLOCK_SIZE_AFTER); + } while(rBlockSizeOut < BACKUP_FILE_MAX_BLOCK_SIZE && rNumBlocksOut > BACKUP_FILE_INCREASE_BLOCK_SIZE_AFTER); // Last block size rLastBlockSizeOut = DataSize - ((rNumBlocksOut - 1) * rBlockSizeOut); |