1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
|
From c9046810d899a408bfbd489aad91872b1203ee6d Mon Sep 17 00:00:00 2001
From: KrIr17 <elendil.krir17@gmail.com>
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
|