From c9046810d899a408bfbd489aad91872b1203ee6d Mon Sep 17 00:00:00 2001 From: KrIr17 Date: Thu, 5 Dec 2024 15:03:47 +0100 Subject: [PATCH] Fix building with poppler 24.12.0 Fixes https://gitlab.com/inkscape/inkscape/-/issues/5415 --- src/extension/internal/pdfinput/pdf-parser.cpp | 4 +++- src/extension/internal/pdfinput/poppler-transition-api.h | 6 ++++++ 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp index 28000a87b0c..9ea30b90a48 100644 --- a/src/extension/internal/pdfinput/pdf-parser.cpp +++ b/src/extension/internal/pdfinput/pdf-parser.cpp @@ -2403,6 +2403,7 @@ void PdfParser::doImage(Object * /*ref*/, Stream *str, GBool inlineImg) int bits; GBool interpolate; StreamColorSpaceMode csMode; + GBool hasAlpha; GBool mask; GBool invert; Object maskObj, smaskObj; @@ -2414,7 +2415,8 @@ void PdfParser::doImage(Object * /*ref*/, Stream *str, GBool inlineImg) // get info from the stream bits = 0; csMode = streamCSNone; - str->getImageParams(&bits, &csMode); + hasAlpha = false; + str->_POPPLER_GET_IMAGE_PARAMS(&bits, &csMode, &hasAlpha); // get stream dict dict = str->getDict(); diff --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h index 8f03aa17779..b7a54828e74 100644 --- a/src/extension/internal/pdfinput/poppler-transition-api.h +++ b/src/extension/internal/pdfinput/poppler-transition-api.h @@ -39,6 +39,12 @@ #define _POPPLER_FUNCTION_TYPE_STITCHING 3 #endif +#if POPPLER_CHECK_VERSION(24,12,0) +#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode, hasAlpha) +#else +#define _POPPLER_GET_IMAGE_PARAMS(bits, csMode, hasAlpha) getImageParams(bits, csMode) +#endif + #if POPPLER_CHECK_VERSION(22, 4, 0) #define _POPPLER_FONTPTR_TO_GFX8(font_ptr) ((Gfx8BitFont *)font_ptr.get()) #else -- GitLab