X-Git-Url: https://wimlib.net/git/?a=blobdiff_plain;ds=inline;f=src%2Fxpress_decompress.c;fp=src%2Fxpress_decompress.c;h=6a0abe2a61f5233247cd215a9656f587a7aff67d;hb=c3e031c6dfe0a2851b709e2ee54cd44dbd393285;hp=9fd5ac5eb045512b67c31831ae5499aa7ee3626e;hpb=908381d2809a48acd9490ec080e51087ae1529fd;p=wimlib diff --git a/src/xpress_decompress.c b/src/xpress_decompress.c index 9fd5ac5e..6a0abe2a 100644 --- a/src/xpress_decompress.c +++ b/src/xpress_decompress.c @@ -138,15 +138,11 @@ xpress_decompress(const void *restrict compressed_data, size_t compressed_size, } length += XPRESS_MIN_MATCH_LEN; - if (unlikely(offset > out_next - out_begin)) + if (unlikely(lz_copy(length, offset, + out_begin, out_next, out_end, + XPRESS_MIN_MATCH_LEN))) return -1; - if (unlikely(length > out_end - out_next)) - return -1; - - lz_copy(out_next, length, offset, out_end, - XPRESS_MIN_MATCH_LEN); - out_next += length; } }