Fix lzma_block_compressed_size().

This commit is contained in:
Lasse Collin 2010-05-27 16:17:42 +03:00
parent 44d70cb154
commit 07dc34f6da
1 changed files with 3 additions and 3 deletions

View File

@ -15,7 +15,7 @@
extern LZMA_API(lzma_ret) extern LZMA_API(lzma_ret)
lzma_block_compressed_size(lzma_block *block, lzma_vli total_size) lzma_block_compressed_size(lzma_block *block, lzma_vli unpadded_size)
{ {
// Validate everything but Uncompressed Size and filters. // Validate everything but Uncompressed Size and filters.
if (lzma_block_unpadded_size(block) == 0) if (lzma_block_unpadded_size(block) == 0)
@ -25,13 +25,13 @@ lzma_block_compressed_size(lzma_block *block, lzma_vli total_size)
+ lzma_check_size(block->check); + lzma_check_size(block->check);
// Validate that Compressed Size will be greater than zero. // Validate that Compressed Size will be greater than zero.
if (container_size <= total_size) if (unpadded_size <= container_size)
return LZMA_DATA_ERROR; return LZMA_DATA_ERROR;
// Calculate what Compressed Size is supposed to be. // Calculate what Compressed Size is supposed to be.
// If Compressed Size was present in Block Header, // If Compressed Size was present in Block Header,
// compare that the new value matches it. // compare that the new value matches it.
const lzma_vli compressed_size = total_size - container_size; const lzma_vli compressed_size = unpadded_size - container_size;
if (block->compressed_size != LZMA_VLI_UNKNOWN if (block->compressed_size != LZMA_VLI_UNKNOWN
&& block->compressed_size != compressed_size) && block->compressed_size != compressed_size)
return LZMA_DATA_ERROR; return LZMA_DATA_ERROR;