summaryrefslogtreecommitdiff
path: root/source/fitz/filter-flate.c
diff options
context:
space:
mode:
Diffstat (limited to 'source/fitz/filter-flate.c')
-rw-r--r--source/fitz/filter-flate.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/source/fitz/filter-flate.c b/source/fitz/filter-flate.c
index 73451d59..f2abaf6d 100644
--- a/source/fitz/filter-flate.c
+++ b/source/fitz/filter-flate.c
@@ -57,6 +57,12 @@ read_flated(fz_stream *stm, unsigned char *outbuf, int outlen)
fz_warn(stm->ctx, "ignoring zlib error: %s", zp->msg);
return outlen - zp->avail_out;
}
+ else if (code == Z_DATA_ERROR && !strcmp(zp->msg, "incorrect data check"))
+ {
+ fz_warn(stm->ctx, "ignoring zlib error: %s", zp->msg);
+ chain->rp = chain->wp;
+ return outlen - zp->avail_out;
+ }
else if (code != Z_OK)
{
fz_throw(stm->ctx, FZ_ERROR_GENERIC, "zlib error: %s", zp->msg);