diff options
Diffstat (limited to 'pdf/pdf_stream.c')
-rw-r--r-- | pdf/pdf_stream.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/pdf/pdf_stream.c b/pdf/pdf_stream.c index e312006c..fcf9acdc 100644 --- a/pdf/pdf_stream.c +++ b/pdf/pdf_stream.c @@ -13,7 +13,7 @@ pdf_is_stream(pdf_document *xref, int num, int gen) pdf_cache_object(xref, num, gen); /* RJW: "cannot load object, ignoring error" */ - return xref->table[num].stm_ofs > 0 || xref->table[num].stm_buf; + return xref->table[num].stm_ofs != 0 || xref->table[num].stm_buf; } /* @@ -496,6 +496,9 @@ pdf_load_image_stream(pdf_document *xref, int num, int gen, int orig_num, int or fz_var(buf); + if (num > 0 && num < xref->len && xref->table[num].stm_buf) + return fz_keep_buffer(xref->ctx, xref->table[num].stm_buf); + dict = pdf_load_object(xref, num, gen); /* RJW: "cannot load stream dictionary (%d %d R)", num, gen */ |