From 02fbebe9426ee05ab39e9b5a56e3529e64160ef6 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Fri, 2 Sep 2022 10:16:02 +0100 Subject: gentoo auto-resync : 02:09:2022 - 10:16:01 --- .../libreoffice-7.3.5.2-poppler-22.09.0.patch | 46 ++++++++++++++++++++++ 1 file changed, 46 insertions(+) create mode 100644 app-office/libreoffice/files/libreoffice-7.3.5.2-poppler-22.09.0.patch (limited to 'app-office/libreoffice/files') diff --git a/app-office/libreoffice/files/libreoffice-7.3.5.2-poppler-22.09.0.patch b/app-office/libreoffice/files/libreoffice-7.3.5.2-poppler-22.09.0.patch new file mode 100644 index 000000000000..f269d53196da --- /dev/null +++ b/app-office/libreoffice/files/libreoffice-7.3.5.2-poppler-22.09.0.patch @@ -0,0 +1,46 @@ +https://gerrit.libreoffice.org/c/core/+/139249 + +From 8bad83bf044661357b02b695e6f53e2e19dea396 Mon Sep 17 00:00:00 2001 +From: Sam James +Date: Fri, 2 Sep 2022 04:31:18 +0100 +Subject: [PATCH] Fix build with Poppler 22.09.0 + +With Poppler 22.09.0, LO fails to build with: +``` +/var/tmp/portage/app-office/libreoffice-7.3.5.2/work/libreoffice-7.3.5.2/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx:682:36: error: too many arguments to function call, expected single argument 'start', have 3 arguments + state->getLineDash(&dashArray, &arrayLen, &startOffset); + ~~~~~~~~~~~~~~~~~~ ^~~~~~~~~~~~~~~~~~~~~~~ +/usr/include/poppler/GfxState.h:1506:32: note: 'getLineDash' declared here + const std::vector &getLineDash(double *start) + ^ +1 error generated. +``` + +Poppler changed the getLineDash interface: +``` +- void getLineDash(double **dash, int *length, double *start) ++ const std::vector &getLineDash(double *start) +``` + +Signed-off-by: Sam James +Change-Id: I29e18f20d7650a7fcac1bc8ab4aaa04aaa2ab8fb +--- a/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx ++++ b/sdext/source/pdfimport/xpdfwrapper/pdfioutdev_gpl.cxx +@@ -678,8 +678,16 @@ void PDFOutDev::updateLineDash(GfxState *state) + return; + assert(state); + +- double* dashArray; int arrayLen; double startOffset; ++ int arrayLen; double startOffset; ++#if POPPLER_CHECK_VERSION(22, 9, 0) ++ const double* dashArray; ++ const std::vector &dash = state->getLineDash(&startOffset); ++ dashArray = dash.data(); ++ arrayLen = dash.size(); ++#else ++ double* dashArray; + state->getLineDash(&dashArray, &arrayLen, &startOffset); ++#endif + + printf( "updateLineDash" ); + if( arrayLen && dashArray ) -- cgit v1.2.3