From 71cb2705af38df7f382014fb68f43bed98abf9b4 Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Tue, 12 Nov 2019 21:21:21 +0100 Subject: external: update pdfium to 3963 Also simplify visibility.patch.1. Change-Id: I8b4ed78b314a1a1f7d31467f782877f056429cc2 Reviewed-on: https://gerrit.libreoffice.org/82548 Tested-by: Jenkins Reviewed-by: Miklos Vajna --- download.lst | 4 ++-- external/pdfium/Library_pdfium.mk | 7 +++++- external/pdfium/visibility.patch.1 | 49 ++++++++++---------------------------- solenv/flatpak-manifest.in | 6 ++--- svx/source/svdraw/svdpdf.cxx | 4 ++-- 5 files changed, 26 insertions(+), 44 deletions(-) diff --git a/download.lst b/download.lst index 25227ddbb5db..502470eb451a 100644 --- a/download.lst +++ b/download.lst @@ -200,8 +200,8 @@ export OWNCLOUD_ANDROID_LIB_SHA256SUM := b18b3e3ef7fae6a79b62f2bb43cc47a5346b633 export OWNCLOUD_ANDROID_LIB_TARBALL := owncloud-android-library-0.9.4-no-binary-deps.tar.gz export PAGEMAKER_SHA256SUM := 66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d export PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz -export PDFIUM_SHA256SUM := 7b08c4239e6eec685d9bfc99a041ba5df68d11fcd039ba908b91c9af90f941b1 -export PDFIUM_TARBALL := pdfium-3896.tar.bz2 +export PDFIUM_SHA256SUM := 80d4d6bd8faec226936fcde5521c6e92c0c645126ac3ae72dd2c160ca1749895 +export PDFIUM_TARBALL := pdfium-3963.tar.bz2 export PIXMAN_SHA256SUM := 21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3997aa20a88e export PIXMAN_TARBALL := e80ebae4da01e77f68744319f01d52a3-pixman-0.34.0.tar.gz export LIBPNG_SHA256SUM := 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca diff --git a/external/pdfium/Library_pdfium.mk b/external/pdfium/Library_pdfium.mk index e6750cc822b9..f98a2d11269b 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -23,7 +23,7 @@ $(eval $(call gb_Library_set_include,pdfium,\ )) $(eval $(call gb_Library_add_defs,pdfium,\ - -DPDFIUM_DLLIMPLEMENTATION \ + -DFPDF_IMPLEMENTATION \ -DUSE_SYSTEM_LCMS2 \ -DUSE_SYSTEM_LIBJPEG \ -DUSE_SYSTEM_ZLIB \ @@ -241,6 +241,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_textrenderer \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3cache \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3glyphmap \ + UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_rendershading \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_creator \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_encryptor \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_flateencoder \ @@ -635,6 +636,10 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ $(eval $(call gb_Library_use_system_win32_libs,pdfium,\ gdi32 \ )) + +$(eval $(call gb_Library_add_defs,pdfium,\ + -DWIN32 \ +)) endif ifeq ($(OS),MACOSX) diff --git a/external/pdfium/visibility.patch.1 b/external/pdfium/visibility.patch.1 index 9983723b2055..835528794f4b 100644 --- a/external/pdfium/visibility.patch.1 +++ b/external/pdfium/visibility.patch.1 @@ -1,45 +1,22 @@ diff --git a/public/fpdfview.h b/public/fpdfview.h -index f5212599f..57d6cda13 100644 +index 2b84f07ba..b6c0a356b 100644 --- a/public/fpdfview.h +++ b/public/fpdfview.h -@@ -154,31 +154,20 @@ typedef int FPDF_ANNOT_APPEARANCEMODE; - // Dictionary value types. - typedef int FPDF_OBJECT_TYPE; +@@ -168,7 +168,6 @@ typedef int FPDF_OBJECT_TYPE; + // Text object enums. + typedef int FPDF_TEXT_RENDERMODE; -#if defined(COMPONENT_BUILD) --// FPDF_EXPORT should be consistent with |export| in the pdfium_fuzzer --// template in testing/fuzzers/BUILD.gn. --#if defined(WIN32) --#if defined(FPDF_IMPLEMENTATION) -+#if defined(PDFIUM_DLLIMPLEMENTATION) -+#ifdef _WIN32 - #define FPDF_EXPORT __declspec(dllexport) - #else --#define FPDF_EXPORT __declspec(dllimport) --#endif // defined(FPDF_IMPLEMENTATION) + // FPDF_EXPORT should be consistent with |export| in the pdfium_fuzzer + // template in testing/fuzzers/BUILD.gn. + #if defined(WIN32) +@@ -184,9 +183,6 @@ typedef int FPDF_TEXT_RENDERMODE; + #define FPDF_EXPORT + #endif // defined(FPDF_IMPLEMENTATION) + #endif // defined(WIN32) -#else --#if defined(FPDF_IMPLEMENTATION) --#define FPDF_EXPORT __attribute__((visibility("default"))) --#else --#define FPDF_EXPORT --#endif // defined(FPDF_IMPLEMENTATION) --#endif // defined(WIN32) -+#define FPDF_EXPORT __attribute__ ((visibility("default"))) -+#endif - #else -#define FPDF_EXPORT -#endif // defined(COMPONENT_BUILD) -- --#if defined(WIN32) && defined(FPDFSDK_EXPORTS) --#define FPDF_CALLCONV __stdcall -+#ifdef _WIN32 -+#define FPDF_EXPORT __declspec(dllimport) - #else --#define FPDF_CALLCONV -+#define FPDF_EXPORT __attribute__ ((visibility("default"))) - #endif -+#endif -+#define FPDF_CALLCONV - // Exported Functions - #ifdef __cplusplus + #if defined(WIN32) && defined(FPDFSDK_EXPORTS) + #define FPDF_CALLCONV __stdcall diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index f92eb4cfe6e8..6bfee9c9de1b 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -69,10 +69,10 @@ "type": "shell" }, { - "url": "https://dev-www.libreoffice.org/src/pdfium-3896.tar.bz2", - "sha256": "7b08c4239e6eec685d9bfc99a041ba5df68d11fcd039ba908b91c9af90f941b1", + "url": "https://dev-www.libreoffice.org/src/pdfium-3963.tar.bz2", + "sha256": "80d4d6bd8faec226936fcde5521c6e92c0c645126ac3ae72dd2c160ca1749895", "type": "file", - "dest-filename": "external/tarballs/pdfium-3896.tar.bz2" + "dest-filename": "external/tarballs/pdfium-3963.tar.bz2" }, { "url": "https://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz", diff --git a/svx/source/svdraw/svdpdf.cxx b/svx/source/svdraw/svdpdf.cxx index a5f47cc94e8e..b392e9523f79 100644 --- a/svx/source/svdraw/svdpdf.cxx +++ b/svx/source/svdraw/svdpdf.cxx @@ -798,7 +798,7 @@ void ImpSdrPdfImport::ImportText(FPDF_PAGEOBJECT pPageObject, FPDF_TEXTPAGE pTex return; double a, b, c, d, e, f; - FPDFText_GetMatrix(pPageObject, &a, &b, &c, &d, &e, &f); + FPDFTextObj_GetMatrix(pPageObject, &a, &b, &c, &d, &e, &f); Matrix aTextMatrix(mCurMatrix); aTextMatrix.Transform(left, right, top, bottom); @@ -850,7 +850,7 @@ void ImpSdrPdfImport::ImportText(FPDF_PAGEOBJECT pPageObject, FPDF_TEXTPAGE pTex Color aTextColor(COL_TRANSPARENT); bool bFill = false; bool bUse = true; - switch (FPDFText_GetTextRenderMode(pPageObject)) + switch (FPDFTextObj_GetTextRenderMode(pPageObject)) { case FPDF_TEXTRENDERMODE_FILL: case FPDF_TEXTRENDERMODE_FILL_CLIP: -- cgit