From d4f0281f3127255b792a9ec492ba4a14d5ee64c2 Mon Sep 17 00:00:00 2001 From: Miklos Vajna Date: Thu, 11 Nov 2021 20:26:18 +0100 Subject: external: update pdfium to 4699 Change-Id: I545adce0491e48fad2bfc4003695bd96cc911f22 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125068 Tested-by: Jenkins Reviewed-by: Miklos Vajna --- external/pdfium/Library_pdfium.mk | 7 +++ external/pdfium/README | 1 + external/pdfium/UnpackedTarball_pdfium.mk | 3 +- external/pdfium/build.patch.1 | 71 ++------------------------ external/pdfium/inc/pch/precompiled_pdfium.hxx | 3 +- 5 files changed, 15 insertions(+), 70 deletions(-) (limited to 'external') diff --git a/external/pdfium/Library_pdfium.mk b/external/pdfium/Library_pdfium.mk index 8b55628fd30f..ee2917fbfd5d 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -19,6 +19,7 @@ $(eval $(call gb_Library_set_include,pdfium,\ -I$(call gb_UnpackedTarball_get_dir,pdfium) \ -I$(call gb_UnpackedTarball_get_dir,pdfium)/third_party \ -I$(call gb_UnpackedTarball_get_dir,pdfium)/third_party/agg23 \ + -I$(call gb_UnpackedTarball_get_dir,pdfium)/third_party/abseil-cpp \ $$(INCLUDE) \ )) @@ -72,6 +73,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/fpdf_save \ UnpackedTarball/pdfium/fpdfsdk/fpdf_text \ UnpackedTarball/pdfium/fpdfsdk/fpdf_view \ + UnpackedTarball/pdfium/fpdfsdk/ipdfsdk_annothandler \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pauseadapter \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_renderpage \ @@ -516,6 +518,11 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/agg23/agg_vcgen_stroke \ )) +# third_party/abseil-cpp +$(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ + UnpackedTarball/pdfium/third_party/abseil-cpp/absl/types/bad_optional_access \ +)) + # third_party/fx_libopenjpeg $(eval $(call gb_Library_add_generated_cobjects,pdfium,\ UnpackedTarball/pdfium/third_party/libopenjpeg20/bio \ diff --git a/external/pdfium/README b/external/pdfium/README index 0a146d2e74de..fdcc91a0a45c 100644 --- a/external/pdfium/README +++ b/external/pdfium/README @@ -12,4 +12,5 @@ git checkout --track origin/chromium/$version gclient sync git archive --prefix=pdfium/ --format=tar origin/chromium/${version} > pdfium-${version}.tar (cd ..; tar --append --file pdfium/pdfium-${version}.tar pdfium/third_party/freetype/src/include/ pdfium/third_party/freetype/src/src/) +(cd ..; tar --append --file pdfium/pdfium-${version}.tar pdfium/third_party/abseil-cpp/absl/) bzip2 pdfium-${version}.tar diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index 4e7d5c1ad6b4..3a19feed8ea2 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -56,7 +56,8 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ mv third_party/base/allocator/partition_allocator/random.cc third_party/base/allocator/partition_allocator/random.cpp && \ mv third_party/base/memory/aligned_memory.cc third_party/base/memory/aligned_memory.cpp && \ mv third_party/base/win/win_util.cc third_party/base/win/win_util.cpp && \ - mv third_party/libopenjpeg20/opj_malloc.cc third_party/libopenjpeg20/opj_malloc.cpp \ + mv third_party/libopenjpeg20/opj_malloc.cc third_party/libopenjpeg20/opj_malloc.cpp && \ + mv third_party/abseil-cpp/absl/types/bad_optional_access.cc third_party/abseil-cpp/absl/types/bad_optional_access.cpp \ )) # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index fce8874af8bd..ec29803246ed 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -38,80 +38,15 @@ index 0fb627ba8..dda1fc8bc 100644 template < typename Container, diff --git a/core/fxcodec/jpx/cjpx_decoder.cpp b/core/fxcodec/jpx/cjpx_decoder.cpp -index c66985a7f..817f81dfa 100644 +index d8875786c..bc019ebe1 100644 --- a/core/fxcodec/jpx/cjpx_decoder.cpp +++ b/core/fxcodec/jpx/cjpx_decoder.cpp -@@ -71,7 +71,7 @@ Optional alloc_rgb(size_t size) { +@@ -73,7 +73,7 @@ absl::optional alloc_rgb(size_t size) { if (!data.b) - return pdfium::nullopt; + return absl::nullopt; - return data; + return std::move(data); } void sycc_to_rgb(int offset, -diff --git a/core/fdrm/fx_crypt_aes.cpp b/core/fdrm/fx_crypt_aes.cpp -index f2170220b..ede18f581 100644 ---- a/core/fdrm/fx_crypt_aes.cpp -+++ b/core/fdrm/fx_crypt_aes.cpp -@@ -437,7 +437,7 @@ const unsigned int D3[256] = { - (block[0] ^= *keysched++, block[1] ^= *keysched++, block[2] ^= *keysched++, \ - block[3] ^= *keysched++) - #define MOVEWORD(i) (block[i] = newstate[i]) --#define MAKEWORD(i) \ -+#define FMAKEWORD(i) \ - (newstate[i] = (E0[(block[i] >> 24) & 0xFF] ^ \ - E1[(block[(i + C1) % Nb] >> 16) & 0xFF] ^ \ - E2[(block[(i + C2) % Nb] >> 8) & 0xFF] ^ \ -@@ -458,10 +458,10 @@ void aes_encrypt_nb_4(CRYPT_aes_context* ctx, unsigned int* block) { - unsigned int newstate[4]; - for (i = 0; i < ctx->Nr - 1; i++) { - ADD_ROUND_KEY_4(); -- MAKEWORD(0); -- MAKEWORD(1); -- MAKEWORD(2); -- MAKEWORD(3); -+ FMAKEWORD(0); -+ FMAKEWORD(1); -+ FMAKEWORD(2); -+ FMAKEWORD(3); - MOVEWORD(0); - MOVEWORD(1); - MOVEWORD(2); -@@ -478,10 +478,10 @@ void aes_encrypt_nb_4(CRYPT_aes_context* ctx, unsigned int* block) { - MOVEWORD(3); - ADD_ROUND_KEY_4(); - } --#undef MAKEWORD -+#undef FMAKEWORD - #undef LASTWORD - --#define MAKEWORD(i) \ -+#define FMAKEWORD(i) \ - (newstate[i] = (D0[(block[i] >> 24) & 0xFF] ^ \ - D1[(block[(i + C1) % Nb] >> 16) & 0xFF] ^ \ - D2[(block[(i + C2) % Nb] >> 8) & 0xFF] ^ \ -@@ -502,10 +502,10 @@ void aes_decrypt_nb_4(CRYPT_aes_context* ctx, unsigned int* block) { - unsigned int newstate[4]; - for (i = 0; i < ctx->Nr - 1; i++) { - ADD_ROUND_KEY_4(); -- MAKEWORD(0); -- MAKEWORD(1); -- MAKEWORD(2); -- MAKEWORD(3); -+ FMAKEWORD(0); -+ FMAKEWORD(1); -+ FMAKEWORD(2); -+ FMAKEWORD(3); - MOVEWORD(0); - MOVEWORD(1); - MOVEWORD(2); -@@ -522,7 +522,7 @@ void aes_decrypt_nb_4(CRYPT_aes_context* ctx, unsigned int* block) { - MOVEWORD(3); - ADD_ROUND_KEY_4(); - } --#undef MAKEWORD -+#undef FMAKEWORD - #undef LASTWORD - - void aes_setup(CRYPT_aes_context* ctx, const unsigned char* key, int keylen) { diff --git a/external/pdfium/inc/pch/precompiled_pdfium.hxx b/external/pdfium/inc/pch/precompiled_pdfium.hxx index 83e1ff915b2f..1296e6634653 100644 --- a/external/pdfium/inc/pch/precompiled_pdfium.hxx +++ b/external/pdfium/inc/pch/precompiled_pdfium.hxx @@ -66,6 +66,7 @@ #if PCH_LEVEL >= 2 #endif // PCH_LEVEL >= 2 #if PCH_LEVEL >= 3 +#include #include #include #include @@ -450,6 +451,7 @@ #include #include #include +#include #include #include #include @@ -487,7 +489,6 @@ #include #include #include -#include #include #include #include -- cgit