diff --git a/xzlib.c b/xzlib.c index 8bafbd3..87ba9ae 100644 --- a/xzlib.c +++ b/xzlib.c @@ -601,17 +601,20 @@ xz_decomp(xz_statep state) #ifdef HAVE_ZLIB_H if (state->how == GZIP) { if (gz_next4(state, &crc) == -1 || gz_next4(state, &len) == -1) { - xz_error(state, LZMA_DATA_ERROR, "unexpected end of file"); - return -1; - } - if (crc != state->zstrm.adler) { - xz_error(state, LZMA_DATA_ERROR, "incorrect data check"); - return -1; - } - if (len != (state->zstrm.total_out & 0xffffffffL)) { - xz_error(state, LZMA_DATA_ERROR, "incorrect length check"); - return -1; - } + /* + xz_error(state, LZMA_DATA_ERROR, "unexpected end of file"); + return -1; + */ + } else { + if (crc != state->zstrm.adler) { + xz_error(state, LZMA_DATA_ERROR, "incorrect data check"); + return -1; + } + if (len != (state->zstrm.total_out & 0xffffffffL)) { + xz_error(state, LZMA_DATA_ERROR, "incorrect length check"); + return -1; + } + } state->strm.avail_in = 0; state->strm.next_in = NULL; state->strm.avail_out = 0;