tdf#165433 Fix PDF imports with (system) poppler >= 25.02.0
authorRobin Candau <robincandau@protonmail.com>
Thu, 27 Feb 2025 09:26:53 +0000 (10:26 +0100)
committerRene Engelhard <rene@debian.org>
Thu, 6 Mar 2025 16:41:13 +0000 (17:41 +0100)
Since poppler 25.02.0, GlobalParams doesn't have a constructor
that accepts a nullptr anymore,
see upstream poppler b50390f748b59cb0a64b912636ecf6527bd0d12a commit.

As such, the data directory location defined for SYSTEM_POPPLER
needs to be updated accordingly (when SYSTEM_POPPLER >= 25.02.0),
otherwise PDF imports fail with
"General Error / General input/output error".

Change-Id: I2a60b03a9ae20aab8d36db2a6827f1f3b9618115
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/182282
Tested-by: Jenkins
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
Gbp-Pq: Name poppler-25.02.diff

sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx

index ebed120708cc237367f9ad317d7342c942b63913..1cb85e244fbe2dd10a2e7a5c21b88ab56593b025 100644 (file)
@@ -110,7 +110,11 @@ int main(int argc, char **argv)
 
     /* Get data directory location */
 #ifdef SYSTEM_POPPLER
+#if POPPLER_CHECK_VERSION(25, 2, 0)
+    const std::string datadir = "";
+#else
     const char* datadir = nullptr;
+#endif
 #else
     /* Creates an absolute path to the poppler_data directory, by taking the path
      * to the xpdfimport executable (provided in argv[0], and concatenating a