diff options
-rw-r--r-- | download.lst | 4 | ||||
-rw-r--r-- | external/pdfium/Library_pdfium.mk | 11 | ||||
-rw-r--r-- | external/pdfium/UnpackedTarball_pdfium.mk | 5 | ||||
-rw-r--r-- | external/pdfium/abseil-trivial.patch | 6 | ||||
-rw-r--r-- | external/pdfium/build.patch.1 | 10 | ||||
-rw-r--r-- | external/pdfium/c++20-comparison.patch | 2 | ||||
-rw-r--r-- | external/pdfium/inc/pch/precompiled_pdfium.hxx | 13 | ||||
-rw-r--r-- | external/pdfium/pdfium_arm64.patch.1 | 32 |
8 files changed, 30 insertions, 53 deletions
diff --git a/download.lst b/download.lst index aa8550fbd2ff..1bb6fb4b80bd 100644 --- a/download.lst +++ b/download.lst @@ -202,8 +202,8 @@ export ORCUS_SHA256SUM := 2a86c405a5929f749b27637509596421d46805753364ab258b035f export ORCUS_TARBALL := liborcus-0.17.2.tar.bz2 export PAGEMAKER_SHA256SUM := 66adacd705a7d19895e08eac46d1e851332adf2e736c566bef1164e7a442519d export PAGEMAKER_TARBALL := libpagemaker-0.0.4.tar.xz -export PDFIUM_SHA256SUM := 04e0e3f90589250c1fa97cec543af6f5e6c8c2daa377d614ec1f04b061b86651 -export PDFIUM_TARBALL := pdfium-5187.tar.bz2 +export PDFIUM_SHA256SUM := ecb9c2a0d777196949994946e3f24ed251ae5d3db8a9fa1e2827ef857151db13 +export PDFIUM_TARBALL := pdfium-5298.tar.bz2 export PIXMAN_SHA256SUM := 6d200dec3740d9ec4ec8d1180e25779c00bc749f94278c8b9021f5534db223fc export PIXMAN_TARBALL := pixman-0.40.0.tar.gz export LIBPNG_SHA256SUM := 505e70834d35383537b6491e7ae8641f1a4bed1876dbfe361201fc80868d88ca diff --git a/external/pdfium/Library_pdfium.mk b/external/pdfium/Library_pdfium.mk index 9ae166889b2c..c00a5f8f89e3 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -244,7 +244,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/render/charposlist \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_devicebuffer \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_docrenderdata \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_imagecacheentry \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_imageloader \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_imagerenderer \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_pagerendercache \ @@ -413,10 +412,8 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssoutputtextbuf \ UnpackedTarball/pdfium/core/fxcrt/cfx_datetime \ UnpackedTarball/pdfium/core/fxcrt/bytestring \ - UnpackedTarball/pdfium/core/fxcrt/cfx_binarybuf \ UnpackedTarball/pdfium/core/fxcrt/cfx_bitstream \ UnpackedTarball/pdfium/core/fxcrt/cfx_utf8decoder \ - UnpackedTarball/pdfium/core/fxcrt/cfx_widetextbuf \ UnpackedTarball/pdfium/core/fxcrt/fx_random \ UnpackedTarball/pdfium/core/fxcrt/fx_string \ UnpackedTarball/pdfium/core/fxcrt/widestring \ @@ -424,9 +421,14 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/fx_codepage \ UnpackedTarball/pdfium/core/fxcrt/fx_number \ UnpackedTarball/pdfium/core/fxcrt/cfx_utf8encoder \ - UnpackedTarball/pdfium/core/fxcrt/cfx_readonlymemorystream \ UnpackedTarball/pdfium/core/fxcrt/observed_ptr \ UnpackedTarball/pdfium/core/fxcrt/string_data_template \ + UnpackedTarball/pdfium/core/fxcrt/binary_buffer \ + UnpackedTarball/pdfium/core/fxcrt/cfx_read_only_span_stream \ + UnpackedTarball/pdfium/core/fxcrt/cfx_read_only_string_stream \ + UnpackedTarball/pdfium/core/fxcrt/cfx_read_only_vector_stream \ + UnpackedTarball/pdfium/core/fxcrt/fx_memory_malloc \ + UnpackedTarball/pdfium/core/fxcrt/widetext_buffer \ )) # fxge @@ -527,6 +529,7 @@ ifneq ($(SYSTEM_ABSEIL),TRUE) # third_party/abseil-cpp $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/abseil-cpp/absl/types/bad_optional_access \ + UnpackedTarball/pdfium/third_party/abseil-cpp/absl/types/bad_variant_access \ )) endif diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index e3b88adb5ab4..c1791ed8e823 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -14,8 +14,6 @@ pdfium_patches += build.patch.1 # Avoids Windows 8 build dependency. pdfium_patches += windows7.patch.1 pdfium_patches += c++20-comparison.patch -# __popcnt not available on arm64 -pdfium_patches += pdfium_arm64.patch.1 # Use CoreGraphics.h instead of Carbon.h pdfium_patches += cg-instead-of-carbon.patch.1 # Android NDK 19 - that is known to work well - does not have 2 defines @@ -59,7 +57,8 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ 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/libopenjpeg/opj_malloc.cc third_party/libopenjpeg/opj_malloc.cpp && \ - mv third_party/abseil-cpp/absl/types/bad_optional_access.cc third_party/abseil-cpp/absl/types/bad_optional_access.cpp \ + mv third_party/abseil-cpp/absl/types/bad_optional_access.cc third_party/abseil-cpp/absl/types/bad_optional_access.cpp && \ + mv third_party/abseil-cpp/absl/types/bad_variant_access.cc third_party/abseil-cpp/absl/types/bad_variant_access.cpp \ )) # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/abseil-trivial.patch b/external/pdfium/abseil-trivial.patch index f3e929a5843a..fa91fa6bbba9 100644 --- a/external/pdfium/abseil-trivial.patch +++ b/external/pdfium/abseil-trivial.patch @@ -1,13 +1,17 @@ --- third_party/abseil-cpp/absl/meta/type_traits.h +++ third_party/abseil-cpp/absl/meta/type_traits.h -@@ -489,23 +489,7 @@ +@@ -501,27 +501,7 @@ struct is_trivially_move_assignable // operation that is not trivial. `is_trivially_copy_assignable<T>` is simply // `is_trivially_assignable<T&, const T&>`. template <typename T> -struct is_trivially_copy_assignable +-#ifdef ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE +- : std::is_trivially_copy_assignable<T> { +-#else - : std::integral_constant< - bool, __has_trivial_assign(typename std::remove_reference<T>::type) && - absl::is_copy_assignable<T>::value> { +-#endif -#ifdef ABSL_HAVE_STD_IS_TRIVIALLY_ASSIGNABLE - private: - static constexpr bool compliant = diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 7e783a07fdb1..35073e2c94d3 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -13,18 +13,18 @@ index 323de4ffc..f11a0b0ad 100644 std::vector<UnsupportedFeature> unsupported; CheckForSharedFormInternal(doc->GetRoot(), &unsupported); diff --git a/third_party/base/span.h b/third_party/base/span.h -index 0fb627ba8..f71c362e2 100644 +index ec9f9903f..1c17ad091 100644 --- a/third_party/base/span.h +++ b/third_party/base/span.h -@@ -214,7 +214,7 @@ class span { +@@ -208,7 +208,7 @@ class span { // Conversions from spans of compatible types: this allows a span<T> to be // seamlessly used as a span<const T>, but not the other way around. template <typename U, typename = internal::EnableIfLegalSpanConversion<U, T>> - constexpr span(const span<U>& other) : span(other.data(), other.size()) {} + span(const span<U>& other) : span(other.data(), other.size()) {} - span& operator=(const span& other) noexcept = default; - ~span() noexcept { - if (!size_) { + span& operator=(const span& other) noexcept { + if (this != &other) { + ReleaseEmptySpan(); diff --git a/third_party/base/span.h b/third_party/base/span.h index 0fb627ba8..dda1fc8bc 100644 --- a/third_party/base/span.h diff --git a/external/pdfium/c++20-comparison.patch b/external/pdfium/c++20-comparison.patch index 638497f6aee4..d26fe66ad8b7 100644 --- a/external/pdfium/c++20-comparison.patch +++ b/external/pdfium/c++20-comparison.patch @@ -10,4 +10,4 @@ + bool operator!=(const FxPartitionAllocAllocator& that) const { return false; } }; - // Used to put backing store for std::vector<> and such + // Used to put backing store for std::vector<> and such into the diff --git a/external/pdfium/inc/pch/precompiled_pdfium.hxx b/external/pdfium/inc/pch/precompiled_pdfium.hxx index eaa6090cf6c6..21bc61f05fb3 100644 --- a/external/pdfium/inc/pch/precompiled_pdfium.hxx +++ b/external/pdfium/inc/pch/precompiled_pdfium.hxx @@ -54,6 +54,7 @@ #include <stack> #include <stdarg.h> #include <stddef.h> +#include <stdint.h> #include <stdlib.h> #include <string.h> #include <string> @@ -188,7 +189,6 @@ #include <core/fpdfapi/render/charposlist.h> #include <core/fpdfapi/render/cpdf_devicebuffer.h> #include <core/fpdfapi/render/cpdf_docrenderdata.h> -#include <core/fpdfapi/render/cpdf_imagecacheentry.h> #include <core/fpdfapi/render/cpdf_imageloader.h> #include <core/fpdfapi/render/cpdf_imagerenderer.h> #include <core/fpdfapi/render/cpdf_pagerendercache.h> @@ -274,18 +274,18 @@ #include <core/fxcodec/scanlinedecoder.h> #include <core/fxcrt/autonuller.h> #include <core/fxcrt/autorestorer.h> +#include <core/fxcrt/binary_buffer.h> #include <core/fxcrt/bytestring.h> -#include <core/fxcrt/cfx_binarybuf.h> #include <core/fxcrt/cfx_bitstream.h> #include <core/fxcrt/cfx_datetime.h> -#include <core/fxcrt/cfx_fixedbufgrow.h> #include <core/fxcrt/cfx_memorystream.h> -#include <core/fxcrt/cfx_readonlymemorystream.h> +#include <core/fxcrt/cfx_read_only_span_stream.h> +#include <core/fxcrt/cfx_read_only_string_stream.h> +#include <core/fxcrt/cfx_read_only_vector_stream.h> #include <core/fxcrt/cfx_seekablestreamproxy.h> #include <core/fxcrt/cfx_timer.h> #include <core/fxcrt/cfx_utf8decoder.h> #include <core/fxcrt/cfx_utf8encoder.h> -#include <core/fxcrt/cfx_widetextbuf.h> #include <core/fxcrt/css/cfx_css.h> #include <core/fxcrt/css/cfx_csscolorvalue.h> #include <core/fxcrt/css/cfx_csscomputedstyle.h> @@ -307,6 +307,7 @@ #include <core/fxcrt/css/cfx_cssvalue.h> #include <core/fxcrt/css/cfx_cssvaluelist.h> #include <core/fxcrt/css/cfx_cssvaluelistparser.h> +#include <core/fxcrt/data_vector.h> #include <core/fxcrt/fileaccess_iface.h> #include <core/fxcrt/fx_bidi.h> #include <core/fxcrt/fx_codepage.h> @@ -328,12 +329,14 @@ #include <core/fxcrt/pauseindicator_iface.h> #include <core/fxcrt/retain_ptr.h> #include <core/fxcrt/scoped_set_insertion.h> +#include <core/fxcrt/small_buffer.h> #include <core/fxcrt/span_util.h> #include <core/fxcrt/stl_util.h> #include <core/fxcrt/string_data_template.h> #include <core/fxcrt/string_pool_template.h> #include <core/fxcrt/unowned_ptr.h> #include <core/fxcrt/widestring.h> +#include <core/fxcrt/widetext_buffer.h> #include <core/fxcrt/xml/cfx_xmlchardata.h> #include <core/fxcrt/xml/cfx_xmldocument.h> #include <core/fxcrt/xml/cfx_xmlelement.h> diff --git a/external/pdfium/pdfium_arm64.patch.1 b/external/pdfium/pdfium_arm64.patch.1 deleted file mode 100644 index 14b6e94d8950..000000000000 --- a/external/pdfium/pdfium_arm64.patch.1 +++ /dev/null @@ -1,32 +0,0 @@ -From 51115e5055ff32bfb4447ad15f68f536480429df Mon Sep 17 00:00:00 2001 -From: Miklos Vajna <miklos.vajna@collabora.com> -Subject: [PATCH] libopenjpeg: fix Windows arm64 build - -Windows 64bit arm has no __popcnt(), see -<https://docs.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics>. -Falling back to the generic code seems to be good enough for our -purposes. - -Change-Id: I61510569793a3df24734c58ffaa3ffc0c2451477 -Reviewed-on: https://pdfium-review.googlesource.com/c/pdfium/+/96010 -Reviewed-by: Lei Zhang <thestig@chromium.org> -Commit-Queue: Lei Zhang <thestig@chromium.org> ---- - third_party/libopenjpeg/ht_dec.c | 2 +- - -diff --git a/third_party/libopenjpeg/ht_dec.c b/third_party/libopenjpeg/ht_dec.c -index 1eb4d525f..e2f3afd6a 100644 ---- a/third_party/libopenjpeg/ht_dec.c -+++ b/third_party/libopenjpeg/ht_dec.c -@@ -69,7 +69,7 @@ static OPJ_BOOL only_cleanup_pass_is_decoded = OPJ_FALSE; - static INLINE - OPJ_UINT32 population_count(OPJ_UINT32 val) - { --#ifdef OPJ_COMPILER_MSVC -+#if defined(OPJ_COMPILER_MSVC) && (defined(_M_IX86) || defined(_M_AMD64)) - return (OPJ_UINT32)__popcnt(val); - #elif (defined OPJ_COMPILER_GNUC) - return (OPJ_UINT32)__builtin_popcount(val); --- -2.35.3 - |