summaryrefslogtreecommitdiff
path: root/pdf
diff options
context:
space:
mode:
authorTor Andersson <tor.andersson@artifex.com>2011-04-09 23:15:17 +0200
committerTor Andersson <tor.andersson@artifex.com>2011-04-09 23:15:17 +0200
commit4a05689ac239535c3441f8d43d21c1373bc0194a (patch)
tree4d5ef120cc0f0f8e7f91ff0912adee802f60c9f2 /pdf
parent63848329d1ee61e30a557a31a3b2d811a13ed421 (diff)
downloadmupdf-4a05689ac239535c3441f8d43d21c1373bc0194a.tar.xz
Throw an error if none of the content stream parts could be loaded.
Diffstat (limited to 'pdf')
-rw-r--r--pdf/pdf_page.c8
1 files changed, 6 insertions, 2 deletions
diff --git a/pdf/pdf_page.c b/pdf/pdf_page.c
index bf9bf411..7837c4cf 100644
--- a/pdf/pdf_page.c
+++ b/pdf/pdf_page.c
@@ -209,8 +209,6 @@ pdf_load_page_contents_array(fz_buffer **bigbufp, pdf_xref *xref, fz_obj *list)
fz_buffer *one;
int i, n;
- /* TODO: openstream, read, close into big buffer at once */
-
big = fz_new_buffer(32 * 1024);
n = fz_array_len(list);
@@ -233,6 +231,12 @@ pdf_load_page_contents_array(fz_buffer **bigbufp, pdf_xref *xref, fz_obj *list)
fz_drop_buffer(one);
}
+ if (n > 0 && big->len == 0)
+ {
+ fz_drop_buffer(big);
+ return fz_throw("cannot load content stream");
+ }
+
*bigbufp = big;
return fz_okay;
}