From a8c6cc692288d6778dfcfe2c29545721e3829b8c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Simon=20B=C3=BCnzli?= Date: Fri, 3 Jan 2014 16:07:25 +0100 Subject: tolerate overlong colorspace lookup strings At http://code.google.com/p/sumatrapdf/issues/detail?id=2477 , there's a document which has an indexed colorspace whose lookup string contains a trailing character. That character can be safely ignored without rejecting everything depending on such a colorspace. --- source/pdf/pdf-colorspace.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'source') diff --git a/source/pdf/pdf-colorspace.c b/source/pdf/pdf-colorspace.c index b29826a5..12bc6a34 100644 --- a/source/pdf/pdf-colorspace.c +++ b/source/pdf/pdf-colorspace.c @@ -198,7 +198,7 @@ load_indexed(pdf_document *doc, pdf_obj *array) n = base->n * (high + 1); lookup = fz_malloc_array(ctx, 1, n); - if (pdf_is_string(lookupobj) && pdf_to_str_len(lookupobj) == n) + if (pdf_is_string(lookupobj) && pdf_to_str_len(lookupobj) >= n) { unsigned char *buf = (unsigned char *) pdf_to_str_buf(lookupobj); for (i = 0; i < n; i++) -- cgit v1.2.3