guix/gnu/packages/patches/inkscape-poppler-0.76.patch
Marius Bakke 1a753d5673
gnu: poppler: Update to 0.77.0.
* gnu/packages/patches/inkscape-poppler-0.76.patch: New file.
* gnu/local.mk (dist_patch_DATA): Adjust accordingly.
* gnu/packages/inkscape.scm (inkscape)[source](patches): New field.
* gnu/packages/patches/texlive-bin-luatex-poppler-compat.patch: Add two new hunks.
* gnu/packages/pdf.scm (poppler): Update to 0.77.0.
* gnu/packages/tex.scm (texlive-bin)[source]: Update Arch patches.
[arguments]: Adjust accordingly.
* gnu/packages/scribus.scm (scribus)[source](patches): Add two new origins.
2019-06-15 23:47:34 +02:00

36 lines
1.3 KiB
Diff

This patch adds support for Poppler 0.76 and later.
Taken from upstream:
<https://gitlab.com/inkscape/inkscape/commit/e831b034746f8dc3c3c1b88372751f6dcb974831>
diff --git a/src/extension/internal/pdfinput/pdf-parser.cpp b/src/extension/internal/pdfinput/pdf-parser.cpp
index 8484984bdf..4f798e35bf 100644
--- a/src/extension/internal/pdfinput/pdf-parser.cpp
+++ b/src/extension/internal/pdfinput/pdf-parser.cpp
@@ -421,7 +421,7 @@ void PdfParser::parse(Object *obj, GBool topLevel) {
error(errInternal, -1, "Weird page contents");
return;
}
- parser = new Parser(xref, new Lexer(xref, obj), gFalse);
+ parser = new _POPPLER_NEW_PARSER(xref, obj);
go(topLevel);
delete parser;
parser = nullptr;
diff --git a/src/extension/internal/pdfinput/poppler-transition-api.h b/src/extension/internal/pdfinput/poppler-transition-api.h
index 61a15083a0..5e8bc4ae90 100644
--- a/src/extension/internal/pdfinput/poppler-transition-api.h
+++ b/src/extension/internal/pdfinput/poppler-transition-api.h
@@ -14,6 +14,13 @@
#include <glib/poppler-features.h>
+#if POPPLER_CHECK_VERSION(0, 76, 0)
+#define _POPPLER_NEW_PARSER(xref, obj) Parser(xref, obj, gFalse)
+#else
+#define _POPPLER_NEW_PARSER(xref, obj) Parser(xref, new Lexer(xref, obj), gFalse)
+#endif
+
+
#if POPPLER_CHECK_VERSION(0, 72, 0)
#define getCString c_str
#endif