summaryrefslogtreecommitdiff
path: root/skip/libreoffice/poppler-22.03.patch
blob: daa16a2f8a622c5a1da84ef9fe600befe791dfa9 (plain)
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
Patch-Source: https://github.com/archlinux/svntogit-packages/blob/2c89c1f968a5f8a6f260a4b91f19f43fae433520/trunk/poppler-22.03.0.patch
edited to add <memory> import
diff --git a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
index ad6320139..e5f6d9c68 100644
--- a/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
+++ b/sdext/source/pdfimport/xpdfwrapper/wrapper_gpl.cxx
@@ -28,6 +28,8 @@
 #include <config_folders.h> //LIBO_SHARE_FOLDER
 #endif
 
+#include <memory>
+
 FILE* g_binary_out=stderr;
 
 static const char *ownerPassword = "\001";
@@ -138,6 +138,15 @@ int main(int argc, char **argv)
     _setmode( _fileno( g_binary_out ), _O_BINARY );
 #endif
 
+#if POPPLER_CHECK_VERSION(22, 3, 0)
+    PDFDoc aDoc( std::make_unique<GooString>(pFileName),
+                 GooString(pOwnerPasswordStr),
+                 GooString(pUserPasswordStr) );
+
+    PDFDoc aErrDoc( std::make_unique<GooString>(pErrFileName),
+                 GooString(pOwnerPasswordStr),
+                 GooString(pUserPasswordStr) );
+#else
     PDFDoc aDoc( pFileName,
                  pOwnerPasswordStr,
                  pUserPasswordStr );
@@ -145,6 +154,7 @@ int main(int argc, char **argv)
     PDFDoc aErrDoc( pErrFileName,
                  pOwnerPasswordStr,
                  pUserPasswordStr );
+#endif
 
     // Check various permissions for aDoc.
     PDFDoc &rDoc = aDoc.isOk()? aDoc: aErrDoc;