[gs-commits] ghostpdl branch, pdfi, updated. jbig2dec-0.14-2341-g1033ab5

[email protected] (Nancy Durgin) Fri, 25 Oct 2019 01:20:39 +0000 (UTC)
Newsgroups gmane.comp.printing.ghostscript.cvs
Message-ID <[email protected]>
The ghostpdl branch, pdfi has been updated
       via  1033ab54d598997b8da16adb57d090fa2eaadf36 (commit)
      from  a16ffd8a2ac59362040662a3d0af3a112634ff06 (commit)

----------------------------------------------------------------------
commit 1033ab54d598997b8da16adb57d090fa2eaadf36
Author: Nancy Durgin <[email protected]>
Date:   Thu Oct 24 15:21:18 2019 -0700

    Fix image JPXDecode with cs_meth = 3
    
    Apparently this is treated the same as cs_meth = 2.  At least that's how
    gs does it.
    
    Fixes tests_private/pdf/PDF_1.7_FTS/fts_17_1702.pdf

diff --git a/pdf/pdf_image.c b/pdf/pdf_image.c
index 6996924..f0c4296 100644
--- a/pdf/pdf_image.c
+++ b/pdf/pdf_image.c
@@ -363,10 +363,13 @@ pdfi_scan_jpxfilter(pdf_context *ctx, pdf_stream *source, int length, pdfi_jpx_i
             cs_meth = data[0];
             if (cs_meth == 1)
                 cs_enum = READ32BE(data+3);
-            else if (cs_meth == 2) {
+            else if (cs_meth == 2 || cs_meth == 3) {
                 /* This is an ICCBased color space just sitting there in the buffer.
                  * TODO: I could create the colorspace now while I have the buffer,
                  * but code flow is more consistent if I do it later.  Could change this.
+                 *
+                 * NOTE: cs_meth == 3 is apparently treated the same as 2.
+                 * No idea why... it's really not documented anywhere.
                  */
                 info->iccbased = true;
                 info->icc_offset = pdfi_tell(source) - (box_len-3);


Summary of changes:
 pdf/pdf_image.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)