summaryrefslogtreecommitdiff
path: root/fitz/filt_pipeline.c
diff options
context:
space:
mode:
Diffstat (limited to 'fitz/filt_pipeline.c')
-rw-r--r--fitz/filt_pipeline.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/fitz/filt_pipeline.c b/fitz/filt_pipeline.c
index 85dc1f82..eec24803 100644
--- a/fitz/filt_pipeline.c
+++ b/fitz/filt_pipeline.c
@@ -129,7 +129,15 @@ tail:
}
else if (e == fz_iodone)
+ {
+ /* Make sure that the head is also done.
+ * It may still contain end-of-data markers or garbage.
+ */
+ e = fz_process(p->head, in, p->buffer);
+ if (e != fz_iodone)
+ fz_catch(e, "head filter not done");
return fz_iodone;
+ }
else if (e)
return fz_rethrow(e, "cannot process tail filter");