diff options
Diffstat (limited to 'media-gfx/inkscape/files/inkscape-1.1.2-r1-poppler-22.03.0.patch')
-rw-r--r-- | media-gfx/inkscape/files/inkscape-1.1.2-r1-poppler-22.03.0.patch | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/media-gfx/inkscape/files/inkscape-1.1.2-r1-poppler-22.03.0.patch b/media-gfx/inkscape/files/inkscape-1.1.2-r1-poppler-22.03.0.patch new file mode 100644 index 000000000000..4083c9426644 --- /dev/null +++ b/media-gfx/inkscape/files/inkscape-1.1.2-r1-poppler-22.03.0.patch @@ -0,0 +1,43 @@ +https://gitlab.com/inkscape/inkscape/-/commit/f7857a4fc2b916e64d9689ccc89914ad19f3ef0a.patch +https://bugs.gentoo.org/843275 + +From f7857a4fc2b916e64d9689ccc89914ad19f3ef0a Mon Sep 17 00:00:00 2001 +From: Evangelos Foutras <evangelos@foutrelis.com> +Date: Sun, 20 Mar 2022 22:41:51 -0300 +Subject: [PATCH] Ensure compatibility with Poppler 22.03 and later + +This change ensures that Inkscape will build against Poppler 22.03 after +the changes that were made to the constructor of `PDFDoc`. + +See: https://gitlab.freedesktop.org/poppler/poppler/-/commit/4f2abd3ef + +Co-authored-by: Rafael Siejakowski <rs@rs-math.net> +(cherry picked from commit a18c57ffff313fd08bc8a44f6b6bf0b01d7e9b75) +--- a/src/extension/internal/pdfinput/pdf-input.cpp ++++ b/src/extension/internal/pdfinput/pdf-input.cpp +@@ -668,8 +668,7 @@ PdfInput::open(::Inkscape::Extension::Input * /*mod*/, const gchar * uri) { + + // poppler does not use glib g_open. So on win32 we must use unicode call. code was copied from + // glib gstdio.c +- GooString *filename_goo = new GooString(uri); +- pdf_doc = std::make_shared<PDFDoc>(filename_goo, nullptr, nullptr, nullptr); // TODO: Could ask for password ++ pdf_doc = _POPPLER_MAKE_SHARED_PDFDOC(uri); // TODO: Could ask for password + + if (!pdf_doc->isOk()) { + int error = pdf_doc->getErrorCode(); +--- a/src/extension/internal/pdfinput/poppler-transition-api.h ++++ b/src/extension/internal/pdfinput/poppler-transition-api.h +@@ -14,6 +14,12 @@ + + #include <glib/poppler-features.h> + ++#if POPPLER_CHECK_VERSION(22, 3, 0) ++#define _POPPLER_MAKE_SHARED_PDFDOC(uri) std::make_shared<PDFDoc>(std::make_unique<GooString>(uri)) ++#else ++#define _POPPLER_MAKE_SHARED_PDFDOC(uri) std::make_shared<PDFDoc>(new GooString(uri), nullptr, nullptr, nullptr) ++#endif ++ + #if POPPLER_CHECK_VERSION(0, 83, 0) + #define _POPPLER_CONST_83 const + #else +GitLab |