]> wimlib.net Git - wimlib/commitdiff
wimlib_compress(): Return 0 if uncompressed_size is invalid
authorEric Biggers <ebiggers3@gmail.com>
Tue, 19 Aug 2014 03:38:48 +0000 (22:38 -0500)
committerEric Biggers <ebiggers3@gmail.com>
Tue, 19 Aug 2014 03:38:48 +0000 (22:38 -0500)
src/compress.c

index 75f92f13441029ae80a1400d502208659471797d..4c99dab145db7b04c5f6fb80f6207d6537b95179 100644 (file)
@@ -154,7 +154,8 @@ wimlib_compress(const void *uncompressed_data, size_t uncompressed_size,
 {
        size_t compressed_size;
 
-       wimlib_assert(uncompressed_size <= c->max_block_size);
+       if (unlikely(uncompressed_size == 0 || uncompressed_size > c->max_block_size))
+               return 0;
 
        compressed_size = c->ops->compress(uncompressed_data,
                                           uncompressed_size,