Rebased ref, commits from common ancestor: commit 5b7a7b6f41acfd2378e19b3e2f8d23053f2fd9d6 Author: Thorsten Behrens <thorsten.behr...@cib.de> AuthorDate: Wed Dec 2 11:40:53 2020 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100
Bump version to 6.1.7.20 Change-Id: I6d03755f4203d2ae71bc7c55ddb76038a04a7c89 diff --git a/configure.ac b/configure.ac index e519d688b62a..1906280e583b 100644 --- a/configure.ac +++ b/configure.ac @@ -9,7 +9,7 @@ dnl in order to create a configure script. # several non-alphanumeric characters, those are split off and used only for the # ABOUTBOXPRODUCTVERSIONSUFFIX in openoffice.lst. Why that is necessary, no idea. -AC_INIT([LibreOffice powered by CIB],[6.1.7.19],[],[],[https://libreoffice.cib.eu/]) +AC_INIT([LibreOffice powered by CIB],[6.1.7.20],[],[],[https://libreoffice.cib.eu/]) AC_PREREQ([2.59]) commit 363997c76749219b900f47043d1b17ba8ec9bccd Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Wed Nov 4 21:39:04 2020 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 xmlsecurity: reject a few dangerous annotation types during pdf sig verify (cherry picked from commit f231dacde9df1c4aa5f4e0970535c4f4093364a7) Conflicts: xmlsecurity/source/helper/pdfsignaturehelper.cxx Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105926 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit fcab45e0e22f4cf46e71856dba7ae5abd6f99bc5) Change-Id: I950b49a6e7181639daf27348ddfa0f36586baa65 diff --git a/include/vcl/filter/PDFiumLibrary.hxx b/include/vcl/filter/PDFiumLibrary.hxx index 783b9a6da8b4..027e4939fab1 100644 --- a/include/vcl/filter/PDFiumLibrary.hxx +++ b/include/vcl/filter/PDFiumLibrary.hxx @@ -59,6 +59,8 @@ public: FPDF_ClosePage(mpPage); } + FPDF_PAGE getPointer() { return mpPage; } + /// Get bitmap checksum of the page, without annotations/commenting. BitmapChecksum getChecksum(int nMDPPerm); }; diff --git a/xmlsecurity/qa/unit/pdfsigning/data/bad-cert-p3-stamp.pdf b/xmlsecurity/qa/unit/pdfsigning/data/bad-cert-p3-stamp.pdf new file mode 100644 index 000000000000..b30f5b03867c Binary files /dev/null and b/xmlsecurity/qa/unit/pdfsigning/data/bad-cert-p3-stamp.pdf differ diff --git a/xmlsecurity/qa/unit/pdfsigning/pdfsigning.cxx b/xmlsecurity/qa/unit/pdfsigning/pdfsigning.cxx index b5a6d5914833..63990fb36225 100644 --- a/xmlsecurity/qa/unit/pdfsigning/pdfsigning.cxx +++ b/xmlsecurity/qa/unit/pdfsigning/pdfsigning.cxx @@ -76,6 +76,7 @@ public: /// Test a valid signature that does not cover the whole file. void testPartial(); void testBadCertP1(); + void testBadCertP3Stamp(); void testPartialInBetween(); /// Test writing a PAdES signature. void testSigningCertificateAttribute(); @@ -99,6 +100,7 @@ public: CPPUNIT_TEST(testPDFPAdESGood); CPPUNIT_TEST(testPartial); CPPUNIT_TEST(testBadCertP1); + CPPUNIT_TEST(testBadCertP3Stamp); CPPUNIT_TEST(testPartialInBetween); CPPUNIT_TEST(testSigningCertificateAttribute); CPPUNIT_TEST(testGood); @@ -455,6 +457,22 @@ void PDFSigningTest::testBadCertP1() rInformation.nStatus); } +void PDFSigningTest::testBadCertP3Stamp() +{ + std::vector<SignatureInformation> aInfos + = verify(m_directories.getURLFromSrc(DATA_DIRECTORY) + "bad-cert-p3-stamp.pdf", 1, + /*rExpectedSubFilter=*/OString()); + CPPUNIT_ASSERT(!aInfos.empty()); + SignatureInformation& rInformation = aInfos[0]; + + // Without the accompanying fix in place, this test would have failed with: + // - Expected: 0 (SecurityOperationStatus_UNKNOWN) + // - Actual : 1 (SecurityOperationStatus_OPERATION_SUCCEEDED) + // i.e. adding a stamp annotation was not considered as a bad modification. + CPPUNIT_ASSERT_EQUAL(xml::crypto::SecurityOperationStatus::SecurityOperationStatus_UNKNOWN, + rInformation.nStatus); +} + /// Test writing a PAdES signature. void PDFSigningTest::testSigningCertificateAttribute() { diff --git a/xmlsecurity/source/pdfio/pdfdocument.cxx b/xmlsecurity/source/pdfio/pdfdocument.cxx index 9d056de0a15c..51eac91495a7 100644 --- a/xmlsecurity/source/pdfio/pdfdocument.cxx +++ b/xmlsecurity/source/pdfio/pdfdocument.cxx @@ -24,6 +24,11 @@ #include <svl/cryptosign.hxx> #include <vcl/filter/pdfdocument.hxx> #include <vcl/bitmap.hxx> +#include <basegfx/range/b2drectangle.hxx> + +#if HAVE_FEATURE_PDFIUM +#include <fpdf_annot.h> +#endif using namespace com::sun::star; @@ -138,8 +143,29 @@ bool IsCompleteSignature(SvStream& rStream, vcl::filter::PDFDocument& rDocument, return std::find(rAllEOFs.begin(), rAllEOFs.end(), nFileEnd) != rAllEOFs.end(); } +/** + * Contains checksums of a PDF page, which is rendered without annotations. It also contains + * the geometry of a few dangerous annotation types. + */ +struct PageChecksum +{ + BitmapChecksum m_nPageContent; + std::vector<basegfx::B2DRectangle> m_aAnnotations; + bool operator==(const PageChecksum& rChecksum) const; +}; + +bool PageChecksum::operator==(const PageChecksum& rChecksum) const +{ + if (m_nPageContent != rChecksum.m_nPageContent) + { + return false; + } + + return m_aAnnotations == rChecksum.m_aAnnotations; +} + /// Collects the checksum of each page of one version of the PDF. -void AnalyizeSignatureStream(SvMemoryStream& rStream, std::vector<BitmapChecksum>& rPageChecksums, +void AnalyizeSignatureStream(SvMemoryStream& rStream, std::vector<PageChecksum>& rPageChecksums, int nMDPPerm) { #if HAVE_FEATURE_PDFIUM @@ -156,8 +182,35 @@ void AnalyizeSignatureStream(SvMemoryStream& rStream, std::vector<BitmapChecksum return; } - BitmapChecksum nPageChecksum = pPdfPage->getChecksum(nMDPPerm); - rPageChecksums.push_back(nPageChecksum); + PageChecksum aPageChecksum; + aPageChecksum.m_nPageContent = pPdfPage->getChecksum(nMDPPerm); + for (int i = 0; i < FPDFPage_GetAnnotCount(pPdfPage->getPointer()); ++i) + { + FPDF_ANNOTATION pAnnotation = FPDFPage_GetAnnot(pPdfPage->getPointer(), i); + int nType = FPDFAnnot_GetSubtype(pAnnotation); + switch (nType) + { + case FPDF_ANNOT_UNKNOWN: + case FPDF_ANNOT_FREETEXT: + case FPDF_ANNOT_STAMP: + case FPDF_ANNOT_REDACT: + { + basegfx::B2DRectangle aB2DRectangle; + FS_RECTF aRect; + if (FPDFAnnot_GetRect(pAnnotation, &aRect)) + { + aB2DRectangle = basegfx::B2DRectangle(aRect.left, aRect.top, aRect.right, + aRect.bottom); + } + aPageChecksum.m_aAnnotations.push_back(aB2DRectangle); + break; + } + default: + break; + } + FPDFPage_CloseAnnot(pAnnotation); + } + rPageChecksums.push_back(aPageChecksum); } #else (void)rStream; @@ -182,7 +235,7 @@ bool IsValidSignature(SvStream& rStream, vcl::filter::PDFObjectElement* pSignatu aSignatureStream.WriteStream(rStream, nSignatureEOF); rStream.Seek(nPos); aSignatureStream.Seek(0); - std::vector<BitmapChecksum> aSignedPages; + std::vector<PageChecksum> aSignedPages; AnalyizeSignatureStream(aSignatureStream, aSignedPages, nMDPPerm); SvMemoryStream aFullStream; @@ -191,7 +244,7 @@ bool IsValidSignature(SvStream& rStream, vcl::filter::PDFObjectElement* pSignatu aFullStream.WriteStream(rStream); rStream.Seek(nPos); aFullStream.Seek(0); - std::vector<BitmapChecksum> aAllPages; + std::vector<PageChecksum> aAllPages; AnalyizeSignatureStream(aFullStream, aAllPages, nMDPPerm); // Fail if any page looks different after signing and at the end. Annotations/commenting doesn't commit 7901b1d6883a4b884b122ac686bb08cd4747e174 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Jul 21 21:25:26 2020 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 external: update pdfium to handle redact annotations external: update pdfium to 4203 (cherry picked from commit 4488be8a9279be0bd0aebd476589a49d2b95da6e) Update one mention of pdfium-4137.tar.bz2 ...left behind by 4488be8a9279be0bd0aebd476589a49d2b95da6e "external: update pdfium to 4203" (cherry picked from commit ba4b3d5f7a0fe8d0d985e98897e041d59093d8b0) external: update pdfium to 4260 (cherry picked from commit f19381e46930bb496e7331754843920933fb4be2) external: update pdfium to 4306 (cherry picked from commit fe531957e3dcd42927cf15ab31d04473433d81f9) Conflicts: include/vcl/pdf/PDFAnnotationSubType.hxx Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105913 Tested-by: Jenkins Reviewed-by: Christian Lohmaier <lohmaier+libreoff...@googlemail.com> (cherry picked from commit b4f50e78e9cd391964128bd0d1446d4dca110cef) Change-Id: Ic10cf99fa412f8f0b3475e82d0a1839a7f04bd08 diff --git a/download.lst b/download.lst index ef405de2e75b..0844f34a0a46 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 := 9a2f9bddca935a263f06c81003483473a525ccd0f4e517bc75fceb914d4c54b6 -export PDFIUM_TARBALL := pdfium-4137.tar.bz2 +export PDFIUM_SHA256SUM := eca406d47ac7e2a84dcc86f93c08f96e591d409589e881477fa75e488e4851d8 +export PDFIUM_TARBALL := pdfium-4306.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 4f2ab40a3baf..3b37143c4599 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -81,6 +81,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pauseadapter \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_renderpage \ + UnpackedTarball/pdfium/fpdfsdk/fpdf_signature \ )) # fdrm @@ -102,6 +103,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_textfield \ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_button \ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_textobject \ + UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_privatedata \ )) # fpdfapi @@ -249,6 +251,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ 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/render/cpdf_rendertiling \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_creator \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_encryptor \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_flateencoder \ @@ -351,20 +354,19 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_TrdProc \ UnpackedTarball/pdfium/core/fxcodec/gif/cfx_gif \ - UnpackedTarball/pdfium/core/fxcodec/gif/cfx_gifcontext \ UnpackedTarball/pdfium/core/fxcodec/gif/cfx_lzwdecompressor \ UnpackedTarball/pdfium/core/fxcodec/cfx_codec_memory \ UnpackedTarball/pdfium/core/fxcodec/fax/faxmodule \ UnpackedTarball/pdfium/core/fxcodec/scanlinedecoder \ - UnpackedTarball/pdfium/core/fxcodec/jbig2/jbig2module \ UnpackedTarball/pdfium/core/fxcodec/jpeg/jpegmodule \ UnpackedTarball/pdfium/core/fxcodec/jpx/cjpx_decoder \ UnpackedTarball/pdfium/core/fxcodec/jpx/jpx_decode_utils \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_DocumentContext \ UnpackedTarball/pdfium/core/fxcodec/basic/basicmodule \ - UnpackedTarball/pdfium/core/fxcodec/jpx/jpxmodule \ UnpackedTarball/pdfium/core/fxcodec/flate/flatemodule \ UnpackedTarball/pdfium/core/fxcodec/icc/iccmodule \ + UnpackedTarball/pdfium/core/fxcodec/jbig2/jbig2_decoder \ + UnpackedTarball/pdfium/core/fxcodec/jpeg/jpeg_common \ )) # fxcrt @@ -434,7 +436,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/dib/cfx_imagetransformer \ UnpackedTarball/pdfium/core/fxge/dib/cfx_scanlinecompositor \ UnpackedTarball/pdfium/core/fxge/dib/cstretchengine \ - UnpackedTarball/pdfium/core/fxge/dib/fx_dib_main \ + UnpackedTarball/pdfium/core/fxge/dib/fx_dib \ UnpackedTarball/pdfium/core/fxge/fontdata/chromefontdata/FoxitDingbats \ UnpackedTarball/pdfium/core/fxge/fontdata/chromefontdata/FoxitFixed \ UnpackedTarball/pdfium/core/fxge/fontdata/chromefontdata/FoxitFixedBold \ @@ -469,8 +471,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/cfx_renderdevice \ UnpackedTarball/pdfium/core/fxge/cfx_substfont \ UnpackedTarball/pdfium/core/fxge/cfx_unicodeencoding \ - UnpackedTarball/pdfium/core/fxge/fx_ge_fontmap \ - UnpackedTarball/pdfium/core/fxge/fx_ge_linux \ UnpackedTarball/pdfium/core/fxge/cfx_glyphbitmap \ UnpackedTarball/pdfium/core/fxge/scoped_font_transform \ UnpackedTarball/pdfium/core/fxge/text_glyph_pos \ @@ -499,7 +499,9 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_edit_impl \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_icon \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_box \ - UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_impl \ + UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_cbbutton \ + UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_cblistbox \ + UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_ctrl \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_scroll_bar \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_special_button \ UnpackedTarball/pdfium/core/fxcrt/cfx_timer \ @@ -547,6 +549,10 @@ $(eval $(call gb_Library_add_generated_cobjects,pdfium,\ UnpackedTarball/pdfium/third_party/libopenjpeg20/sparse_array \ )) +$(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ + UnpackedTarball/pdfium/third_party/libopenjpeg20/opj_malloc \ +)) + # pdfium_base $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/address_space_randomization \ @@ -560,6 +566,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_page \ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_root_base \ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/random \ + UnpackedTarball/pdfium/third_party/base/memory/aligned_memory \ )) # skia_shared @@ -632,10 +639,14 @@ ifeq ($(OS),WNT) $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/win32/cfx_psrenderer \ UnpackedTarball/pdfium/core/fxge/win32/cpsoutput \ - UnpackedTarball/pdfium/core/fxge/win32/fx_win32_device \ - UnpackedTarball/pdfium/core/fxge/win32/fx_win32_dib \ - UnpackedTarball/pdfium/core/fxge/win32/fx_win32_gdipext \ - UnpackedTarball/pdfium/core/fxge/win32/fx_win32_print \ + UnpackedTarball/pdfium/core/fxge/win32/cgdi_device_driver \ + UnpackedTarball/pdfium/core/fxge/win32/cgdi_display_driver \ + UnpackedTarball/pdfium/core/fxge/win32/cgdi_plus_ext \ + UnpackedTarball/pdfium/core/fxge/win32/cgdi_printer_driver \ + UnpackedTarball/pdfium/core/fxge/win32/cps_printer_driver \ + UnpackedTarball/pdfium/core/fxge/win32/ctext_only_printer_driver \ + UnpackedTarball/pdfium/core/fxge/win32/cwin32_platform \ + UnpackedTarball/pdfium/core/fxge/cfx_windowsrenderdevice \ UnpackedTarball/pdfium/core/fxcrt/cfx_fileaccess_windows \ UnpackedTarball/pdfium/third_party/base/win/win_util \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_windowsrenderdevice \ @@ -676,4 +687,11 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ )) endif +ifeq ($(OS),LINUX) +# fxge +$(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ + UnpackedTarball/pdfium/core/fxge/fx_ge_linux \ +)) +endif + # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index 93d3fede6e3c..f4643376cee0 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -45,7 +45,9 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ mv third_party/base/allocator/partition_allocator/partition_page.cc third_party/base/allocator/partition_allocator/partition_page.cpp && \ mv third_party/base/allocator/partition_allocator/partition_root_base.cc third_party/base/allocator/partition_allocator/partition_root_base.cpp && \ mv third_party/base/allocator/partition_allocator/random.cc third_party/base/allocator/partition_allocator/random.cpp && \ - mv third_party/base/win/win_util.cc third_party/base/win/win_util.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 \ )) # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 16544f0c7c81..7cf1021938f5 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -37,3 +37,14 @@ index 0fb627ba8..dda1fc8bc 100644 : span(container.data(), container.size()) {} template < typename Container, +--- a/core/fxcodec/jpx/cjpx_decoder.cpp ++++ b/core/fxcodec/jpx/cjpx_decoder.cpp +@@ -70,7 +70,7 @@ Optional<OpjImageRgbData> alloc_rgb(size_t size) { + if (!data.b) + return {}; + +- return data; ++ return std::move(data); + } + + void sycc_to_rgb(int offset, diff --git a/external/pdfium/configs/build_config.h b/external/pdfium/configs/build_config.h index edd70af53034..ec93c278767c 100644 --- a/external/pdfium/configs/build_config.h +++ b/external/pdfium/configs/build_config.h @@ -6,7 +6,7 @@ // This file adds defines about the platform we're currently building on. // Operating System: -// OS_WIN / OS_MACOSX / OS_LINUX / OS_POSIX (MACOSX or LINUX) +// OS_WIN / OS_APPLE / OS_LINUX / OS_POSIX (MACOSX or LINUX) // Compiler: // COMPILER_MSVC / COMPILER_GCC // Processor: @@ -21,7 +21,7 @@ #define OS_ANDROID 1 #define OS_LINUX 1 #elif defined(__APPLE__) -#define OS_MACOSX 1 +#define OS_APPLE 1 #elif defined(__linux__) #define OS_LINUX 1 #elif defined(__DragonFly__) @@ -48,7 +48,7 @@ // For access to standard POSIX features, use OS_POSIX instead of a more // specific macro. -#if defined(OS_MACOSX) || defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) +#if defined(OS_APPLE) || defined(OS_LINUX) || defined(OS_BSD) || defined(OS_SOLARIS) #define OS_POSIX 1 #endif diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index 95d49fb6a85c..8fb2efc649cc 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -93,10 +93,10 @@ "type": "shell" }, { - "url": "https://dev-www.libreoffice.org/src/pdfium-4137.tar.bz2", - "sha256": "9a2f9bddca935a263f06c81003483473a525ccd0f4e517bc75fceb914d4c54b6", + "url": "https://dev-www.libreoffice.org/src/pdfium-4306.tar.bz2", + "sha256": "eca406d47ac7e2a84dcc86f93c08f96e591d409589e881477fa75e488e4851d8", "type": "file", - "dest-filename": "external/tarballs/pdfium-4137.tar.bz2" + "dest-filename": "external/tarballs/pdfium-4306.tar.bz2" }, { "url": "https://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz", commit 1aace83d38794ce08e0c4b1609b70fb579f9dcec Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Jan 14 21:34:52 2020 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 external: update pdfium from 3963 to 4137 This is a combination of 6 commits, which brings pdfium to the same version as libreoffice-7-0. This is the 1st commit message: external: update pdfium to 4021 (cherry picked from commit 1cb70721ba00dd6c6958f0a10e39aa5c1866ec96) This is the commit message #2: external/pdfium: C++20 comparison operator fix Missing const leads to overload resolution ambiguity when a synthesized candidate of operator == for a reversed-argument rewrite conflicts with the actual operator ==, due to the asymmetric const-ness of the implicit object parameter and the RHS parameter: > In file included from workdir/UnpackedTarball/pdfium/core/fxge/cfx_font.cpp:7: > In file included from workdir/UnpackedTarball/pdfium/core/fxge/cfx_font.h:11: > llvm/inst/include/c++/v1/vector:1369:27: error: use of overloaded operator '!=' is ambiguous (with operand types 'std::__1::__vector_base<unsigned char, FxAllocAllocator<unsigned char> >::allocator_type' (aka 'FxAllocAllocator<unsigned char>') and 'std::__1::__vector_base<unsigned char, FxAllocAllocator<unsigned char> >::allocator_type') > if (__base::__alloc() != __c.__alloc()) > ~~~~~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~ > llvm/inst/include/c++/v1/vector:1359:5: note: in instantiation of member function 'std::__1::vector<unsigned char, FxAllocAllocator<unsigned char> >::__move_assign' requested here > __move_assign(__x, integral_constant<bool, > ^ > workdir/UnpackedTarball/pdfium/core/fxge/cfx_font.cpp:384:24: note: in instantiation of member function 'std::__1::vector<unsigned char, FxAllocAllocator<unsigned char> >::operator=' requested here > m_FontDataAllocation = std::vector<uint8_t, FxAllocAllocator<uint8_t>>( > ^ > workdir/UnpackedTarball/pdfium/core/fxcrt/fx_memory_wrappers.h:74:8: note: candidate function > bool operator!=(const FxAllocAllocator& that) { return false; } > ^ > workdir/UnpackedTarball/pdfium/core/fxcrt/fx_memory_wrappers.h:73:8: note: candidate function > bool operator==(const FxAllocAllocator& that) { return true; } > ^ > workdir/UnpackedTarball/pdfium/core/fxcrt/fx_memory_wrappers.h:73:8: note: candidate function (with reversed parameter order) (cherry picked from commit 6e0461d576d9f386e458f98f3c57f0ba385aacb4) This is the commit message #3: pdfium: don't patch out the COMPONENT_BUILD check, define it So next time we update, no need to adapt a failing patch. (cherry picked from commit 9b4ab9bda41a818832c721933986c9c6e07a6e6c) This is the commit message #4: make update_pch also consider files in <module>/src/**/inc With --enable-pch=full there's not much difference between a "public" header in <module>/inc and a private one in <module>/src/somewhere/inc . And since the script searches recursively, this apparently helps to find even more headers for lower pch levels. [ Just the pdfium part. ] (cherry picked from commit 69e0d871ec1de2260f9213d3113464155eac173c) This is the commit message #5: external: update pdfium to 4083 (cherry picked from commit 9054c36d4ea3bee25fb9a47a96a0ea2cd07148c3) This is the commit message #6: external: update pdfium to 4137 (cherry picked from commit 1ffe59ef31186e36ad0aa7bbcdd32e407ee8d26c) Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102373 Tested-by: Jenkins Reviewed-by: Caolán McNamara <caol...@redhat.com> (cherry picked from commit 434d611e22c4fe76a11d2de26b9f185bb04e5ad3) Change-Id: I8483d0aa5b4fea5a59107c20a8aa5f1ef694af0a b7c12461e04fa97bf55ee967e8d6c9bcf92fdf4a diff --git a/RepositoryExternal.mk b/RepositoryExternal.mk index 7e629a89cb34..5adfeac29007 100644 --- a/RepositoryExternal.mk +++ b/RepositoryExternal.mk @@ -4210,6 +4210,7 @@ ifneq ($(ENABLE_PDFIUM),) define gb_LinkTarget__use_pdfium $(call gb_LinkTarget_set_include,$(1),\ -I$(call gb_UnpackedTarball_get_dir,pdfium)/public \ + -DCOMPONENT_BUILD \ $$(INCLUDE) \ ) $(call gb_LinkTarget_use_libraries,$(1),pdfium) diff --git a/download.lst b/download.lst index 342fe2c058a4..ef405de2e75b 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 := 80d4d6bd8faec226936fcde5521c6e92c0c645126ac3ae72dd2c160ca1749895 -export PDFIUM_TARBALL := pdfium-3963.tar.bz2 +export PDFIUM_SHA256SUM := 9a2f9bddca935a263f06c81003483473a525ccd0f4e517bc75fceb914d4c54b6 +export PDFIUM_TARBALL := pdfium-4137.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 f1d1606c494b..4f2ab40a3baf 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -28,6 +28,7 @@ $(eval $(call gb_Library_add_defs,pdfium,\ -DMEMORY_TOOL_REPLACES_ALLOCATOR \ -DUNICODE \ -DWIN32_LEAN_AND_MEAN \ + -DCOMPONENT_BUILD \ )) # Don't show warnings upstream doesn't care about. @@ -79,6 +80,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/fpdf_view \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pauseadapter \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform \ + UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_renderpage \ )) # fdrm @@ -231,7 +233,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/parser/fpdf_parser_utility \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_object_walker \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_read_validator \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_charposlist \ + 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 \ @@ -272,7 +274,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_avail \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_pagecontentmanager \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transparency \ - UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_dibbase \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_dib \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_object_stream \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_table \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_stringarchivestream \ @@ -280,7 +282,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_contentstream_write_utils \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_annotcontext \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_pagerendercontext \ - UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_dibtransferfunc \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transferfuncdib \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transferfunc \ )) @@ -289,7 +291,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/cline \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_aaction \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_action \ - UnpackedTarball/pdfium/core/fpdfdoc/cpdf_actionfields \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_annot \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_annotlist \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_apsettings \ @@ -297,7 +298,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_bookmarktree \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_defaultappearance \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_dest \ - UnpackedTarball/pdfium/core/fpdfdoc/cpdf_docjsactions \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_filespec \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_formcontrol \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_formfield \ @@ -320,6 +320,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_structtree \ UnpackedTarball/pdfium/core/fpdfdoc/cba_fontmap \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_color_utils \ + UnpackedTarball/pdfium/core/fpdfdoc/cpdf_icon \ )) # fpdftext @@ -418,6 +419,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ 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 \ )) # fxge @@ -426,7 +428,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/dib/cfx_bitmapstorer \ UnpackedTarball/pdfium/core/fxge/dib/cfx_dibextractor \ UnpackedTarball/pdfium/core/fxge/dib/cfx_dibitmap \ - UnpackedTarball/pdfium/core/fxge/dib/cfx_filtereddib \ + UnpackedTarball/pdfium/core/fxge/cfx_drawutils \ UnpackedTarball/pdfium/core/fxge/dib/cfx_imagerenderer \ UnpackedTarball/pdfium/core/fxge/dib/cfx_imagestretcher \ UnpackedTarball/pdfium/core/fxge/dib/cfx_imagetransformer \ @@ -557,6 +559,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_oom \ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_page \ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_root_base \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/random \ )) # skia_shared @@ -651,7 +654,7 @@ ifeq ($(OS),MACOSX) # fxge $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/apple/fx_apple_platform \ - UnpackedTarball/pdfium/core/fxge/apple/fx_mac_imp \ + UnpackedTarball/pdfium/core/fxge/apple/fx_mac_impl \ UnpackedTarball/pdfium/core/fxge/apple/fx_quartz_device \ )) @@ -668,7 +671,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/android/cfpf_skiafont \ UnpackedTarball/pdfium/core/fxge/android/cfpf_skiafontmgr \ UnpackedTarball/pdfium/core/fxge/android/cfx_androidfontinfo \ - UnpackedTarball/pdfium/core/fxge/android/fx_android_imp \ + UnpackedTarball/pdfium/core/fxge/android/fx_android_impl \ UnpackedTarball/pdfium/core/fxge/android/cfpf_skiapathfont \ )) endif diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index 8f493ea3a0d6..93d3fede6e3c 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -8,12 +8,12 @@ # pdfium_patches := -pdfium_patches += visibility.patch.1 pdfium_patches += ubsan.patch # Fixes build on our baseline. pdfium_patches += build.patch.1 # Avoids Windows 8 build dependency. pdfium_patches += windows7.patch.1 +pdfium_patches += c++20-comparison.patch $(eval $(call gb_UnpackedTarball_UnpackedTarball,pdfium)) @@ -44,6 +44,7 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ mv third_party/base/allocator/partition_allocator/partition_oom.cc third_party/base/allocator/partition_allocator/partition_oom.cpp && \ mv third_party/base/allocator/partition_allocator/partition_page.cc third_party/base/allocator/partition_allocator/partition_page.cpp && \ mv third_party/base/allocator/partition_allocator/partition_root_base.cc third_party/base/allocator/partition_allocator/partition_root_base.cpp && \ + mv third_party/base/allocator/partition_allocator/random.cc third_party/base/allocator/partition_allocator/random.cpp && \ mv third_party/base/win/win_util.cc third_party/base/win/win_util.cpp \ )) diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 47316fe235a1..16544f0c7c81 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -1,24 +1,3 @@ -diff --git a/core/fxge/dib/cfx_imagetransformer.cpp b/core/fxge/dib/cfx_imagetransformer.cpp -index 8e01127b0..f4ce4d915 100644 ---- a/core/fxge/dib/cfx_imagetransformer.cpp -+++ b/core/fxge/dib/cfx_imagetransformer.cpp -@@ -315,14 +315,14 @@ bool CFX_ImageTransformer::Continue(IFX_PauseIndicator* pPause) { - } else if (pDestMask) { - CalcData cdata = { - pDestMask.Get(), result2stretch, pSrcMaskBuf, -- m_Storer.GetBitmap()->m_pAlphaMask->GetPitch(), -+ static_cast<uint32_t>(m_Storer.GetBitmap()->m_pAlphaMask->GetPitch()), - }; - CalcMask(cdata); - } - - CalcData cdata = {pTransformed.Get(), result2stretch, - m_Storer.GetBitmap()->GetBuffer(), -- m_Storer.GetBitmap()->GetPitch()}; -+ static_cast<uint32_t>(m_Storer.GetBitmap()->GetPitch())}; - if (m_Storer.GetBitmap()->IsAlphaMask()) { - CalcAlpha(cdata); - } else { diff --git a/core/fpdfdoc/cpdf_metadata.cpp b/core/fpdfdoc/cpdf_metadata.cpp index 323de4ffc..f11a0b0ad 100644 --- a/core/fpdfdoc/cpdf_metadata.cpp diff --git a/external/pdfium/c++20-comparison.patch b/external/pdfium/c++20-comparison.patch new file mode 100644 index 000000000000..025f9ba010db --- /dev/null +++ b/external/pdfium/c++20-comparison.patch @@ -0,0 +1,13 @@ +--- core/fxcrt/fx_memory_wrappers.h ++++ core/fxcrt/fx_memory_wrappers.h +@@ -70,8 +70,8 @@ + } + + // There's no state, so they are all the same, +- bool operator==(const FxAllocAllocator& that) { return true; } +- bool operator!=(const FxAllocAllocator& that) { return false; } ++ bool operator==(const FxAllocAllocator& that) const { return true; } ++ bool operator!=(const FxAllocAllocator& that) const { return false; } + }; + + #endif // CORE_FXCRT_FX_MEMORY_WRAPPERS_H_ diff --git a/external/pdfium/ubsan.patch b/external/pdfium/ubsan.patch index 1d03c28a4d15..8610e24f2828 100644 --- a/external/pdfium/ubsan.patch +++ b/external/pdfium/ubsan.patch @@ -1,14 +1,14 @@ ---- core/fxcrt/string_data_template.h -+++ core/fxcrt/string_data_template.h -@@ -76,7 +76,8 @@ class StringDataTemplate { - ASSERT(nLen >= 0); - ASSERT(offset + nLen <= m_nAllocLength); +--- core/fxcrt/string_data_template.cpp ++++ core/fxcrt/string_data_template.cpp +@@ -82,7 +82,8 @@ void StringDataTemplate<CharType>::CopyContentsAt(size_t offset, + ASSERT(nLen >= 0); + ASSERT(offset + nLen <= m_nAllocLength); -- memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); -+ if (nLen != 0) -+ memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); - m_String[offset + nLen] = 0; - } +- memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); ++ if (nLen != 0) ++ memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); + m_String[offset + nLen] = 0; + } --- core/fxge/cfx_glyphcache.cpp +++ core/fxge/cfx_glyphcache.cpp diff --git a/external/pdfium/visibility.patch.1 b/external/pdfium/visibility.patch.1 deleted file mode 100644 index 835528794f4b..000000000000 --- a/external/pdfium/visibility.patch.1 +++ /dev/null @@ -1,22 +0,0 @@ -diff --git a/public/fpdfview.h b/public/fpdfview.h -index 2b84f07ba..b6c0a356b 100644 ---- a/public/fpdfview.h -+++ b/public/fpdfview.h -@@ -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) -@@ -184,9 +183,6 @@ typedef int FPDF_TEXT_RENDERMODE; - #define FPDF_EXPORT - #endif // defined(FPDF_IMPLEMENTATION) - #endif // defined(WIN32) --#else --#define FPDF_EXPORT --#endif // defined(COMPONENT_BUILD) - - #if defined(WIN32) && defined(FPDFSDK_EXPORTS) - #define FPDF_CALLCONV __stdcall diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index 34b8a5f90bf9..95d49fb6a85c 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -93,10 +93,10 @@ "type": "shell" }, { - "url": "https://dev-www.libreoffice.org/src/pdfium-3963.tar.bz2", - "sha256": "80d4d6bd8faec226936fcde5521c6e92c0c645126ac3ae72dd2c160ca1749895", + "url": "https://dev-www.libreoffice.org/src/pdfium-4137.tar.bz2", + "sha256": "9a2f9bddca935a263f06c81003483473a525ccd0f4e517bc75fceb914d4c54b6", "type": "file", - "dest-filename": "external/tarballs/pdfium-3963.tar.bz2" + "dest-filename": "external/tarballs/pdfium-4137.tar.bz2" }, { "url": "https://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz", commit 242c37d43347eb4be3dc9f76d17104b8ec60356f Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Nov 12 21:21:21 2019 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 external: update pdfium to 3963 Also simplify visibility.patch.1. Reviewed-on: https://gerrit.libreoffice.org/82548 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 71cb2705af38df7f382014fb68f43bed98abf9b4) Change-Id: I8b4ed78b314a1a1f7d31467f782877f056429cc2 diff --git a/download.lst b/download.lst index 03e455c98463..342fe2c058a4 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 71f3e61e9421..f1d1606c494b 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -20,7 +20,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 \ @@ -246,6 +246,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 \ @@ -640,6 +641,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 01cdc0704adc..34b8a5f90bf9 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -93,10 +93,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", commit 62c0c1032a42def9c096938a2d1f1b1416de0729 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Sep 10 23:17:35 2019 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 external: update pdfium to 3896 Reviewed-on: https://gerrit.libreoffice.org/78806 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 735af14843eab3e75ac9ed6f0773ce7bb3241c8a) Change-Id: I9d47d9afed47e01657b42fbfdb06e7fc91a150c8 diff --git a/download.lst b/download.lst index f20bdaae4013..03e455c98463 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 := 43ef702b65a21d66fc580b1b9c77893e33fe07dd764a17c2aac08ecec534c8ad -export PDFIUM_TARBALL := pdfium-3849.tar.bz2 +export PDFIUM_SHA256SUM := 7b08c4239e6eec685d9bfc99a041ba5df68d11fcd039ba908b91c9af90f941b1 +export PDFIUM_TARBALL := pdfium-3896.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 b07b71d39661..71f3e61e9421 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -42,7 +42,6 @@ $(eval $(call gb_Library_set_generated_cxx_suffix,pdfium,cpp)) # pdfium $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ - UnpackedTarball/pdfium/fpdfsdk/cfx_systemhandler \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_annot \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_annothandlermgr \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_annotiteration \ @@ -78,8 +77,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_pauseadapter \ - UnpackedTarball/pdfium/fpdfsdk/cpdf_annotcontext \ + UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pauseadapter \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform \ )) @@ -168,8 +166,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/cmaps/Korea1/UniKS-UTF16-H_0 \ UnpackedTarball/pdfium/core/fpdfapi/cmaps/Korea1/cmaps_korea1 \ UnpackedTarball/pdfium/core/fpdfapi/cmaps/fpdf_cmaps \ - UnpackedTarball/pdfium/core/fpdfapi/cpdf_modulemgr \ - UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pagerendercontext \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_pagecontentgenerator \ UnpackedTarball/pdfium/core/fpdfapi/font/cpdf_cidfont \ UnpackedTarball/pdfium/core/fpdfapi/font/cpdf_font \ @@ -237,7 +233,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_read_validator \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_charposlist \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_devicebuffer \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_dibtransferfunc \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_docrenderdata \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_imagecacheentry \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_imageloader \ @@ -249,9 +244,8 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_renderstatus \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_scaledrenderbuffer \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_textrenderer \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_transferfunc \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3cache \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3glyphs \ + UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3glyphmap \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_creator \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_encryptor \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_flateencoder \ @@ -277,12 +271,16 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_avail \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_pagecontentmanager \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transparency \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_dibbase \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_dibbase \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_object_stream \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_table \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_stringarchivestream \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_occontext \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_contentstream_write_utils \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_annotcontext \ + UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_pagerendercontext \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_dibtransferfunc \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transferfunc \ )) # fpdfdoc @@ -489,7 +487,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ # pwl $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ - UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_appstream \ + UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_appstream \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_button \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_caret \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_combo_box \ @@ -501,8 +499,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_impl \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_scroll_bar \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_special_button \ - UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_timer \ - UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_timer_handler \ + UnpackedTarball/pdfium/core/fxcrt/cfx_timer \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_wnd \ )) @@ -637,6 +634,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/win32/fx_win32_print \ UnpackedTarball/pdfium/core/fxcrt/cfx_fileaccess_windows \ UnpackedTarball/pdfium/third_party/base/win/win_util \ + UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_windowsrenderdevice \ )) $(eval $(call gb_Library_use_system_win32_libs,pdfium,\ diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 562b2e6198d3..47316fe235a1 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -58,16 +58,3 @@ index 0fb627ba8..dda1fc8bc 100644 : span(container.data(), container.size()) {} template < typename Container, -diff --git a/core/fpdfdoc/cpdf_dest.h b/core/fpdfdoc/cpdf_dest.h -index 7f4eb86c0..5e227f86e 100644 ---- a/core/fpdfdoc/cpdf_dest.h -+++ b/core/fpdfdoc/cpdf_dest.h -@@ -41,7 +41,7 @@ - float* pZoom) const; - - private: -- UnownedPtr<const CPDF_Array> const m_pArray; -+ UnownedPtr<const CPDF_Array> m_pArray; - }; - - #endif // CORE_FPDFDOC_CPDF_DEST_H_ diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index 67b822e2f7e1..01cdc0704adc 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -93,10 +93,10 @@ "type": "shell" }, { - "url": "https://dev-www.libreoffice.org/src/pdfium-3667.tar.bz2", - "sha256": "012ef554e7a6ec6d794f9ff7e66ff71011cab1b67317b427d9c820c48c141e5e", + "url": "https://dev-www.libreoffice.org/src/pdfium-3896.tar.bz2", + "sha256": "7b08c4239e6eec685d9bfc99a041ba5df68d11fcd039ba908b91c9af90f941b1", "type": "file", - "dest-filename": "external/tarballs/pdfium-3426.tar.bz2" + "dest-filename": "external/tarballs/pdfium-3896.tar.bz2" }, { "url": "https://dev-www.libreoffice.org/src/0168229624cfac409e766913506961a8-ucpp-1.3.2.tar.gz", commit 7386e0ca92f2ebb49597d4fe1e1492ffaaef0b97 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Jul 16 23:32:31 2019 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:17 2020 +0100 external: update pdfium to 3849 Reviewed-on: https://gerrit.libreoffice.org/75736 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 0ee0ca3036629b69bf20b448d74991fd133f08ac) Change-Id: I616f57bd9de72b078500a290bf9ff89c71773f26 diff --git a/download.lst b/download.lst index 1b67034c336a..f20bdaae4013 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 := e3faddcf741336c64ca2e6f72b23e9e60979969b2cf67c878c9a5bc38328cfc4 -export PDFIUM_TARBALL := pdfium-3794.tar.bz2 +export PDFIUM_SHA256SUM := 43ef702b65a21d66fc580b1b9c77893e33fe07dd764a17c2aac08ecec534c8ad +export PDFIUM_TARBALL := pdfium-3849.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 17417ac5b86e..b07b71d39661 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -92,7 +92,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ # formfiller $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ - UnpackedTarball/pdfium/fpdfsdk/formfiller/cba_fontmap \ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_checkbox \ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_combobox \ UnpackedTarball/pdfium/fpdfsdk/formfiller/cffl_formfiller \ @@ -170,7 +169,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/cmaps/Korea1/cmaps_korea1 \ UnpackedTarball/pdfium/core/fpdfapi/cmaps/fpdf_cmaps \ UnpackedTarball/pdfium/core/fpdfapi/cpdf_modulemgr \ - UnpackedTarball/pdfium/core/fpdfapi/cpdf_pagerendercontext \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pagerendercontext \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_pagecontentgenerator \ UnpackedTarball/pdfium/core/fpdfapi/font/cpdf_cidfont \ UnpackedTarball/pdfium/core/fpdfapi/font/cpdf_font \ @@ -277,11 +276,13 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_page_object_avail \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_avail \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_pagecontentmanager \ - UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_transparency \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_transparency \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_dibbase \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_object_stream \ UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_cross_ref_table \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_stringarchivestream \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_occontext \ + UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_contentstream_write_utils \ )) # fpdfdoc @@ -308,7 +309,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_metadata \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_nametree \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_numbertree \ - UnpackedTarball/pdfium/core/fpdfdoc/cpdf_occontext \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_pagelabel \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_variabletext \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_viewerpreferences \ @@ -319,6 +319,8 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/ctypeset \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_structelement \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_structtree \ + UnpackedTarball/pdfium/core/fpdfdoc/cba_fontmap \ + UnpackedTarball/pdfium/core/fpdfdoc/cpdf_color_utils \ )) # fpdftext @@ -331,7 +333,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ # fxcodec $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ - UnpackedTarball/pdfium/core/fxcodec/codec/fx_codec \ + UnpackedTarball/pdfium/core/fxcodec/fx_codec \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_ArithDecoder \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_ArithIntDecoder \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_BitStream \ @@ -348,18 +350,21 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_Segment \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict \ UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_TrdProc \ - UnpackedTarball/pdfium/core/fxcodec/bmp/fx_bmp \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_scanlinedecoder \ UnpackedTarball/pdfium/core/fxcodec/gif/cfx_gif \ UnpackedTarball/pdfium/core/fxcodec/gif/cfx_gifcontext \ UnpackedTarball/pdfium/core/fxcodec/gif/cfx_lzwdecompressor \ - UnpackedTarball/pdfium/core/fxcodec/codec/cfx_codec_memory \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_faxmodule \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_iccmodule \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_jbig2module \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_jpxmodule \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_jpegmodule \ - UnpackedTarball/pdfium/core/fxcodec/codec/ccodec_flatemodule \ + UnpackedTarball/pdfium/core/fxcodec/cfx_codec_memory \ + UnpackedTarball/pdfium/core/fxcodec/fax/faxmodule \ + UnpackedTarball/pdfium/core/fxcodec/scanlinedecoder \ + UnpackedTarball/pdfium/core/fxcodec/jbig2/jbig2module \ + UnpackedTarball/pdfium/core/fxcodec/jpeg/jpegmodule \ + UnpackedTarball/pdfium/core/fxcodec/jpx/cjpx_decoder \ + UnpackedTarball/pdfium/core/fxcodec/jpx/jpx_decode_utils \ + UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_DocumentContext \ + UnpackedTarball/pdfium/core/fxcodec/basic/basicmodule \ + UnpackedTarball/pdfium/core/fxcodec/jpx/jpxmodule \ + UnpackedTarball/pdfium/core/fxcodec/flate/flatemodule \ + UnpackedTarball/pdfium/core/fxcodec/icc/iccmodule \ )) # fxcrt @@ -408,12 +413,12 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/fx_random \ UnpackedTarball/pdfium/core/fxcrt/fx_string \ UnpackedTarball/pdfium/core/fxcrt/widestring \ - UnpackedTarball/pdfium/core/fxcrt/cfx_seekablemultistream \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssdata \ 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 \ )) # fxge @@ -450,7 +455,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/agg/fx_agg_driver \ UnpackedTarball/pdfium/core/fxge/cfx_cliprgn \ UnpackedTarball/pdfium/core/fxge/cfx_color \ - UnpackedTarball/pdfium/core/fxge/cfx_facecache \ + UnpackedTarball/pdfium/core/fxge/cfx_glyphcache \ UnpackedTarball/pdfium/core/fxge/cfx_folderfontinfo \ UnpackedTarball/pdfium/core/fxge/cfx_font \ UnpackedTarball/pdfium/core/fxge/cfx_fontcache \ @@ -463,7 +468,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/cfx_renderdevice \ UnpackedTarball/pdfium/core/fxge/cfx_substfont \ UnpackedTarball/pdfium/core/fxge/cfx_unicodeencoding \ - UnpackedTarball/pdfium/core/fxge/cttfontdesc \ UnpackedTarball/pdfium/core/fxge/fx_ge_fontmap \ UnpackedTarball/pdfium/core/fxge/fx_ge_linux \ UnpackedTarball/pdfium/core/fxge/cfx_glyphbitmap \ @@ -471,6 +475,9 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/text_glyph_pos \ UnpackedTarball/pdfium/core/fxge/fx_font \ UnpackedTarball/pdfium/core/fxge/dib/cfx_dibbase \ + UnpackedTarball/pdfium/core/fxge/dib/cfx_cmyk_to_srgb \ + UnpackedTarball/pdfium/core/fxge/text_char_pos \ + UnpackedTarball/pdfium/core/fxge/cfx_face \ )) # javascript, build with pdf_enable_v8 disabled. diff --git a/external/pdfium/ubsan.patch b/external/pdfium/ubsan.patch index 9939b6e9e4b6..1d03c28a4d15 100644 --- a/external/pdfium/ubsan.patch +++ b/external/pdfium/ubsan.patch @@ -10,9 +10,9 @@ m_String[offset + nLen] = 0; } ---- core/fxge/cfx_facecache.cpp -+++ core/fxge/cfx_facecache.cpp -@@ -183,7 +183,8 @@ std::unique_ptr<CFX_GlyphBitmap> CFX_FaceCache::RenderGlyph( +--- core/fxge/cfx_glyphcache.cpp ++++ core/fxge/cfx_glyphcache.cpp +@@ -183,7 +183,8 @@ std::unique_ptr<CFX_GlyphBitmap> CFX_GlyphCache::RenderGlyph( } } } else { diff --git a/external/pdfium/windows7.patch.1 b/external/pdfium/windows7.patch.1 index 5b793136f023..d33f273ff4ca 100644 --- a/external/pdfium/windows7.patch.1 +++ b/external/pdfium/windows7.patch.1 @@ -1,5 +1,5 @@ diff --git a/third_party/base/win/win_util.cc b/third_party/base/win/win_util.cc -index 9c90b9d62..356eca74d 100644 +index ae2dba84d..7a3718848 100644 --- a/third_party/base/win/win_util.cc +++ b/third_party/base/win/win_util.cc @@ -12,28 +12,7 @@ namespace base { diff --git a/vcl/qa/cppunit/pdfexport/pdfexport.cxx b/vcl/qa/cppunit/pdfexport/pdfexport.cxx index e1d7120e9db2..f6147d3391e2 100644 --- a/vcl/qa/cppunit/pdfexport/pdfexport.cxx +++ b/vcl/qa/cppunit/pdfexport/pdfexport.cxx @@ -317,7 +317,7 @@ void PdfExportTest::testTdf105461() continue; unsigned int nRed = 0, nGreen = 0, nBlue = 0, nAlpha = 0; - FPDFPath_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); + FPDFPageObj_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); if (Color(nRed, nGreen, nBlue) == COL_YELLOW) ++nYellowPathCount; } @@ -372,7 +372,7 @@ void PdfExportTest::testTdf107868() continue; unsigned int nRed = 0, nGreen = 0, nBlue = 0, nAlpha = 0; - FPDFPath_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); + FPDFPageObj_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); if (Color(nRed, nGreen, nBlue) == COL_WHITE) ++nWhitePathCount; } @@ -807,7 +807,7 @@ void PdfExportTest::testTdf108963() continue; unsigned int nRed = 0, nGreen = 0, nBlue = 0, nAlpha = 0; - FPDFPath_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); + FPDFPageObj_GetFillColor(pPdfPageObject, &nRed, &nGreen, &nBlue, &nAlpha); if (Color(nRed, nGreen, nBlue) == COL_YELLOW) { ++nYellowPathCount; commit 299bec7831111d5c141c1280cb7e8c51ee075c2b Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Mon May 20 21:37:39 2019 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 external: update pdfium to 3794 Reviewed-on: https://gerrit.libreoffice.org/72619 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 3dbe66b7895a412ad7ad9aede4be383489d805de) Change-Id: Ie4c42943445813c7c50bf06cb710cedf2a61f3a9 diff --git a/download.lst b/download.lst index 643da2904e84..1b67034c336a 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 := dfaaae78f1d371378c6b715862f9b3b67f9a6857c7864bfaebfd88a962d03bca -export PDFIUM_TARBALL := pdfium-3730.tar.bz2 +export PDFIUM_SHA256SUM := e3faddcf741336c64ca2e6f72b23e9e60979969b2cf67c878c9a5bc38328cfc4 +export PDFIUM_TARBALL := pdfium-3794.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 2bfa8210676d..17417ac5b86e 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -200,7 +200,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pagemodule \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pageobject \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pageobjectholder \ - UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pageobjectlist \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_path \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pathobject \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_pattern \ @@ -630,6 +629,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/win32/fx_win32_gdipext \ UnpackedTarball/pdfium/core/fxge/win32/fx_win32_print \ UnpackedTarball/pdfium/core/fxcrt/cfx_fileaccess_windows \ + UnpackedTarball/pdfium/third_party/base/win/win_util \ )) $(eval $(call gb_Library_use_system_win32_libs,pdfium,\ diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index eda4fd781e8d..8f493ea3a0d6 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -12,6 +12,8 @@ pdfium_patches += visibility.patch.1 pdfium_patches += ubsan.patch # Fixes build on our baseline. pdfium_patches += build.patch.1 +# Avoids Windows 8 build dependency. +pdfium_patches += windows7.patch.1 $(eval $(call gb_UnpackedTarball_UnpackedTarball,pdfium)) @@ -41,7 +43,8 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ mv third_party/base/allocator/partition_allocator/partition_bucket.cc third_party/base/allocator/partition_allocator/partition_bucket.cpp && \ mv third_party/base/allocator/partition_allocator/partition_oom.cc third_party/base/allocator/partition_allocator/partition_oom.cpp && \ mv third_party/base/allocator/partition_allocator/partition_page.cc third_party/base/allocator/partition_allocator/partition_page.cpp && \ - mv third_party/base/allocator/partition_allocator/partition_root_base.cc third_party/base/allocator/partition_allocator/partition_root_base.cpp \ + mv third_party/base/allocator/partition_allocator/partition_root_base.cc third_party/base/allocator/partition_allocator/partition_root_base.cpp && \ + mv third_party/base/win/win_util.cc third_party/base/win/win_util.cpp \ )) # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index a1ec25e8b223..562b2e6198d3 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -71,16 +71,3 @@ index 7f4eb86c0..5e227f86e 100644 }; #endif // CORE_FPDFDOC_CPDF_DEST_H_ -diff --git a/core/fpdfdoc/cpdf_filespec.h b/core/fpdfdoc/cpdf_filespec.h -index 7050f695b..916afed8b 100644 ---- a/core/fpdfdoc/cpdf_filespec.h -+++ b/core/fpdfdoc/cpdf_filespec.h -@@ -41,7 +41,7 @@ class CPDF_FileSpec { - - private: - UnownedPtr<const CPDF_Object> const m_pObj; -- UnownedPtr<CPDF_Object> const m_pWritableObj; -+ UnownedPtr<CPDF_Object> m_pWritableObj; - }; - - #endif // CORE_FPDFDOC_CPDF_FILESPEC_H_ diff --git a/external/pdfium/visibility.patch.1 b/external/pdfium/visibility.patch.1 index 04e89b38ab10..9983723b2055 100644 --- a/external/pdfium/visibility.patch.1 +++ b/external/pdfium/visibility.patch.1 @@ -1,26 +1,41 @@ diff --git a/public/fpdfview.h b/public/fpdfview.h -index 1ff0aeb26..f48036f2b 100644 +index f5212599f..57d6cda13 100644 --- a/public/fpdfview.h +++ b/public/fpdfview.h -@@ -129,14 +129,20 @@ typedef int FPDF_ANNOTATION_SUBTYPE; +@@ -154,31 +154,20 @@ typedef int FPDF_ANNOT_APPEARANCEMODE; // Dictionary value types. typedef int FPDF_OBJECT_TYPE; --#if defined(_WIN32) && defined(FPDFSDK_EXPORTS) --// On Windows system, functions are exported in a DLL +-#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) --#define FPDF_CALLCONV __stdcall #else +-#define FPDF_EXPORT __declspec(dllimport) +-#endif // defined(FPDF_IMPLEMENTATION) +-#else +-#if defined(FPDF_IMPLEMENTATION) +-#define FPDF_EXPORT __attribute__((visibility("default"))) +-#else -#define FPDF_EXPORT --#define FPDF_CALLCONV +-#endif // defined(FPDF_IMPLEMENTATION) +-#endif // defined(WIN32) +#define FPDF_EXPORT __attribute__ ((visibility("default"))) +#endif -+#else + #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 + #else +-#define FPDF_CALLCONV +#define FPDF_EXPORT __attribute__ ((visibility("default"))) #endif +#endif diff --git a/external/pdfium/windows7.patch.1 b/external/pdfium/windows7.patch.1 new file mode 100644 index 000000000000..5b793136f023 --- /dev/null +++ b/external/pdfium/windows7.patch.1 @@ -0,0 +1,34 @@ +diff --git a/third_party/base/win/win_util.cc b/third_party/base/win/win_util.cc +index 9c90b9d62..356eca74d 100644 +--- a/third_party/base/win/win_util.cc ++++ b/third_party/base/win/win_util.cc +@@ -12,28 +12,7 @@ namespace base { + namespace win { + + bool IsUser32AndGdi32Available() { +- static auto is_user32_and_gdi32_available = []() { +- // If win32k syscalls aren't disabled, then user32 and gdi32 are available. +- +- typedef decltype( +- GetProcessMitigationPolicy)* GetProcessMitigationPolicyType; +- GetProcessMitigationPolicyType get_process_mitigation_policy_func = +- reinterpret_cast<GetProcessMitigationPolicyType>(GetProcAddress( +- GetModuleHandle(L"kernel32.dll"), "GetProcessMitigationPolicy")); +- +- if (!get_process_mitigation_policy_func) +- return true; +- +- PROCESS_MITIGATION_SYSTEM_CALL_DISABLE_POLICY policy = {}; +- if (get_process_mitigation_policy_func(GetCurrentProcess(), +- ProcessSystemCallDisablePolicy, +- &policy, sizeof(policy))) { +- return policy.DisallowWin32kSystemCalls == 0; +- } +- +- return true; +- }(); +- return is_user32_and_gdi32_available; ++ return true; + } + + } // namespace win commit ba62bf4077789557079a7523226dc542a8773bbc Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Apr 2 21:14:36 2019 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 pdfium: avoid problems with SetForm using WIN32_LEAN_AND_MEAN So that it does not get defined to SetFormA() or SetFormW() and still requires no patching. Change-Id: I4364b02306633733d8536ebd8d7d42273dfeef74 Reviewed-on: https://gerrit.libreoffice.org/70150 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 66c29fd202f22a36edbb929ddcc1f1cadb0a6e8f) diff --git a/external/pdfium/Library_pdfium.mk b/external/pdfium/Library_pdfium.mk index 4e22618f32b5..2bfa8210676d 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -27,6 +27,7 @@ $(eval $(call gb_Library_add_defs,pdfium,\ -DUSE_SYSTEM_ICUUC \ -DMEMORY_TOOL_REPLACES_ALLOCATOR \ -DUNICODE \ + -DWIN32_LEAN_AND_MEAN \ )) # Don't show warnings upstream doesn't care about. diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 0a4476ce1300..a1ec25e8b223 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -84,60 +84,3 @@ index 7050f695b..916afed8b 100644 }; #endif // CORE_FPDFDOC_CPDF_FILESPEC_H_ -diff --git a/fpdfsdk/cpdf_annotcontext.cpp b/fpdfsdk/cpdf_annotcontext.cpp -index 0beebe1bf..4aeefb04e 100644 ---- a/fpdfsdk/cpdf_annotcontext.cpp -+++ b/fpdfsdk/cpdf_annotcontext.cpp -@@ -21,7 +21,7 @@ CPDF_AnnotContext::CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict, - - CPDF_AnnotContext::~CPDF_AnnotContext() = default; - --void CPDF_AnnotContext::SetForm(CPDF_Stream* pStream) { -+void CPDF_AnnotContext::SetForm_(CPDF_Stream* pStream) { - if (!pStream) - return; - -diff --git a/fpdfsdk/cpdf_annotcontext.h b/fpdfsdk/cpdf_annotcontext.h -index cab81e7d4..ce24fff52 100644 ---- a/fpdfsdk/cpdf_annotcontext.h -+++ b/fpdfsdk/cpdf_annotcontext.h -@@ -21,7 +21,7 @@ class CPDF_AnnotContext { - CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict, CPDF_Page* pPage); - ~CPDF_AnnotContext(); - -- void SetForm(CPDF_Stream* pStream); -+ void SetForm_(CPDF_Stream* pStream); - bool HasForm() const { return !!m_pAnnotForm; } - CPDF_Form* GetForm() const { return m_pAnnotForm.get(); } - -diff --git a/fpdfsdk/fpdf_annot.cpp b/fpdfsdk/fpdf_annot.cpp -index 8b4c69789..f6560059f 100644 ---- a/fpdfsdk/fpdf_annot.cpp -+++ b/fpdfsdk/fpdf_annot.cpp -@@ -399,7 +399,7 @@ FPDFAnnot_AppendObject(FPDF_ANNOTATION annot, FPDF_PAGEOBJECT obj) { - - // Get the annotation's corresponding form object for parsing its AP stream. - if (!pAnnot->HasForm()) -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - - // Check that the object did not come from the same annotation. If this check - // succeeds, then it is assumed that the object came from -@@ -435,7 +435,7 @@ FPDF_EXPORT int FPDF_CALLCONV FPDFAnnot_GetObjectCount(FPDF_ANNOTATION annot) { - if (!pStream) - return 0; - -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - } - return pdfium::CollectionSize<int>(*pAnnot->GetForm()->GetPageObjectList()); - } -@@ -452,7 +452,7 @@ FPDFAnnot_GetObject(FPDF_ANNOTATION annot, int index) { - if (!pStream) - return nullptr; - -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - } - - return FPDFPageObjectFromCPDFPageObject( commit 3c97473019ccaefbc38f9ec19ba3c128c594c9b2 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Mar 12 21:19:08 2019 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 external: update pdfium to 3730 Change-Id: Iaaac797812b2addd1e5693dbb4338fc1c506a26d Reviewed-on: https://gerrit.libreoffice.org/69134 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 8743247493ba90098e3e32cf30de0e8995569852) diff --git a/download.lst b/download.lst index 5995a6caa635..643da2904e84 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 := 012ef554e7a6ec6d794f9ff7e66ff71011cab1b67317b427d9c820c48c141e5e -export PDFIUM_TARBALL := pdfium-3667.tar.bz2 +export PDFIUM_SHA256SUM := dfaaae78f1d371378c6b715862f9b3b67f9a6857c7864bfaebfd88a962d03bca +export PDFIUM_TARBALL := pdfium-3730.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 113466d818b8..4e22618f32b5 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -254,8 +254,8 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3cache \ UnpackedTarball/pdfium/core/fpdfapi/render/cpdf_type3glyphs \ UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_creator \ - UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_encryptor \ - UnpackedTarball/pdfium/core/fpdfapi/edit/cpdf_flateencoder \ + UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_encryptor \ + UnpackedTarball/pdfium/core/fpdfapi/parser/cpdf_flateencoder \ UnpackedTarball/pdfium/core/fpdfapi/font/cfx_cttgsubtable \ UnpackedTarball/pdfium/core/fpdfapi/font/cfx_stockfontarray \ UnpackedTarball/pdfium/core/fpdfapi/font/cpdf_cid2unicodemap \ @@ -466,7 +466,9 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/cttfontdesc \ UnpackedTarball/pdfium/core/fxge/fx_ge_fontmap \ UnpackedTarball/pdfium/core/fxge/fx_ge_linux \ - UnpackedTarball/pdfium/core/fxge/fx_ge_text \ + UnpackedTarball/pdfium/core/fxge/cfx_glyphbitmap \ + UnpackedTarball/pdfium/core/fxge/scoped_font_transform \ + UnpackedTarball/pdfium/core/fxge/text_glyph_pos \ UnpackedTarball/pdfium/core/fxge/fx_font \ UnpackedTarball/pdfium/core/fxge/dib/cfx_dibbase \ )) diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 721c1784719d..0a4476ce1300 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -32,38 +32,6 @@ index 323de4ffc..f11a0b0ad 100644 std::vector<UnsupportedFeature> unsupported; CheckForSharedFormInternal(doc->GetRoot(), &unsupported); -diff --git a/fpdfsdk/cpdf_annotcontext.cpp b/fpdfsdk/cpdf_annotcontext.cpp -index 20c5fc343..a40cd1eae 100644 ---- a/fpdfsdk/cpdf_annotcontext.cpp -+++ b/fpdfsdk/cpdf_annotcontext.cpp -@@ -16,12 +16,12 @@ CPDF_AnnotContext::CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict, - CPDF_Page* pPage, - CPDF_Stream* pStream) - : m_pAnnotDict(pAnnotDict), m_pPage(pPage) { -- SetForm(pStream); -+ SetForm_(pStream); - } - - CPDF_AnnotContext::~CPDF_AnnotContext() = default; - --void CPDF_AnnotContext::SetForm(CPDF_Stream* pStream) { -+void CPDF_AnnotContext::SetForm_(CPDF_Stream* pStream) { - if (!pStream) - return; - -diff --git a/fpdfsdk/cpdf_annotcontext.h b/fpdfsdk/cpdf_annotcontext.h -index 38cc91e03..7904ae044 100644 ---- a/fpdfsdk/cpdf_annotcontext.h -+++ b/fpdfsdk/cpdf_annotcontext.h -@@ -23,7 +23,7 @@ class CPDF_AnnotContext { - CPDF_Stream* pStream); - ~CPDF_AnnotContext(); - -- void SetForm(CPDF_Stream* pStream); -+ void SetForm_(CPDF_Stream* pStream); - bool HasForm() const { return !!m_pAnnotForm; } - CPDF_Form* GetForm() const { return m_pAnnotForm.get(); } - CPDF_Dictionary* GetAnnotDict() const { return m_pAnnotDict.Get(); } diff --git a/third_party/base/span.h b/third_party/base/span.h index 0fb627ba8..f71c362e2 100644 --- a/third_party/base/span.h @@ -77,37 +45,6 @@ index 0fb627ba8..f71c362e2 100644 span& operator=(const span& other) noexcept = default; ~span() noexcept { if (!size_) { -diff --git a/fpdfsdk/fpdf_annot.cpp b/fpdfsdk/fpdf_annot.cpp -index d3bf38d31..e8aea9707 100644 ---- a/fpdfsdk/fpdf_annot.cpp -+++ b/fpdfsdk/fpdf_annot.cpp -@@ -389,7 +389,7 @@ FPDFAnnot_AppendObject(FPDF_ANNOTATION annot, FPDF_PAGEOBJECT obj) { - - // Get the annotation's corresponding form object for parsing its AP stream. - if (!pAnnot->HasForm()) -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - - // Check that the object did not come from the same annotation. If this check - // succeeds, then it is assumed that the object came from -@@ -425,7 +425,7 @@ FPDF_EXPORT int FPDF_CALLCONV FPDFAnnot_GetObjectCount(FPDF_ANNOTATION annot) { - if (!pStream) - return 0; - -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - } - return pdfium::CollectionSize<int>(*pAnnot->GetForm()->GetPageObjectList()); - } -@@ -442,7 +442,7 @@ FPDFAnnot_GetObject(FPDF_ANNOTATION annot, int index) { - if (!pStream) - return nullptr; - -- pAnnot->SetForm(pStream); -+ pAnnot->SetForm_(pStream); - } - - return FPDFPageObjectFromCPDFPageObject( diff --git a/third_party/base/span.h b/third_party/base/span.h index 0fb627ba8..dda1fc8bc 100644 --- a/third_party/base/span.h @@ -147,3 +84,60 @@ index 7050f695b..916afed8b 100644 }; #endif // CORE_FPDFDOC_CPDF_FILESPEC_H_ +diff --git a/fpdfsdk/cpdf_annotcontext.cpp b/fpdfsdk/cpdf_annotcontext.cpp +index 0beebe1bf..4aeefb04e 100644 +--- a/fpdfsdk/cpdf_annotcontext.cpp ++++ b/fpdfsdk/cpdf_annotcontext.cpp +@@ -21,7 +21,7 @@ CPDF_AnnotContext::CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict, + + CPDF_AnnotContext::~CPDF_AnnotContext() = default; + +-void CPDF_AnnotContext::SetForm(CPDF_Stream* pStream) { ++void CPDF_AnnotContext::SetForm_(CPDF_Stream* pStream) { + if (!pStream) + return; + +diff --git a/fpdfsdk/cpdf_annotcontext.h b/fpdfsdk/cpdf_annotcontext.h +index cab81e7d4..ce24fff52 100644 +--- a/fpdfsdk/cpdf_annotcontext.h ++++ b/fpdfsdk/cpdf_annotcontext.h +@@ -21,7 +21,7 @@ class CPDF_AnnotContext { + CPDF_AnnotContext(CPDF_Dictionary* pAnnotDict, CPDF_Page* pPage); + ~CPDF_AnnotContext(); + +- void SetForm(CPDF_Stream* pStream); ++ void SetForm_(CPDF_Stream* pStream); + bool HasForm() const { return !!m_pAnnotForm; } + CPDF_Form* GetForm() const { return m_pAnnotForm.get(); } + +diff --git a/fpdfsdk/fpdf_annot.cpp b/fpdfsdk/fpdf_annot.cpp +index 8b4c69789..f6560059f 100644 +--- a/fpdfsdk/fpdf_annot.cpp ++++ b/fpdfsdk/fpdf_annot.cpp +@@ -399,7 +399,7 @@ FPDFAnnot_AppendObject(FPDF_ANNOTATION annot, FPDF_PAGEOBJECT obj) { + + // Get the annotation's corresponding form object for parsing its AP stream. + if (!pAnnot->HasForm()) +- pAnnot->SetForm(pStream); ++ pAnnot->SetForm_(pStream); + + // Check that the object did not come from the same annotation. If this check + // succeeds, then it is assumed that the object came from +@@ -435,7 +435,7 @@ FPDF_EXPORT int FPDF_CALLCONV FPDFAnnot_GetObjectCount(FPDF_ANNOTATION annot) { + if (!pStream) + return 0; + +- pAnnot->SetForm(pStream); ++ pAnnot->SetForm_(pStream); + } + return pdfium::CollectionSize<int>(*pAnnot->GetForm()->GetPageObjectList()); + } +@@ -452,7 +452,7 @@ FPDFAnnot_GetObject(FPDF_ANNOTATION annot, int index) { + if (!pStream) + return nullptr; + +- pAnnot->SetForm(pStream); ++ pAnnot->SetForm_(pStream); + } + + return FPDFPageObjectFromCPDFPageObject( commit 0b6cb73855274b1979c0faf6e0f8f3d81ec02735 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Tue Jan 15 21:18:44 2019 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 external: update pdfium to 3667 Reviewed-on: https://gerrit.libreoffice.org/66408 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.com> (cherry picked from commit 2044475c8cb33b76591aa6de77dd43a0bf9f5145) Change-Id: Ie4f0cc8f06432e182ce7ffcae5269075d12658ef diff --git a/download.lst b/download.lst index af6b49800cfc..5995a6caa635 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 := c42cdff8e18b9369bc9383e0e8c2531b5631a2712852a26d8e7593021561de89 -export PDFIUM_TARBALL := pdfium-3613.tar.bz2 +export PDFIUM_SHA256SUM := 012ef554e7a6ec6d794f9ff7e66ff71011cab1b67317b427d9c820c48c141e5e +export PDFIUM_TARBALL := pdfium-3667.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 f7406cf6d716..113466d818b8 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -372,7 +372,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/fx_memory \ UnpackedTarball/pdfium/core/fxcrt/fx_stream \ UnpackedTarball/pdfium/core/fxcrt/fx_system \ - UnpackedTarball/pdfium/core/fxcrt/fx_ucddata \ UnpackedTarball/pdfium/core/fxcrt/fx_unicode \ UnpackedTarball/pdfium/core/fxcrt/xml/cfx_xmldocument \ UnpackedTarball/pdfium/core/fxcrt/xml/cfx_xmlelement \ @@ -488,7 +487,6 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_edit \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_edit_ctrl \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_edit_impl \ - UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_font_map \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_icon \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_box \ UnpackedTarball/pdfium/fpdfsdk/pwl/cpwl_list_impl \ diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 1a223352ddf8..721c1784719d 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -147,16 +147,3 @@ index 7050f695b..916afed8b 100644 }; #endif // CORE_FPDFDOC_CPDF_FILESPEC_H_ -diff --git a/core/fxcrt/fx_coordinates.cpp b/core/fxcrt/fx_coordinates.cpp -index fabde1e80..92a423cc6 100644 ---- a/core/fxcrt/fx_coordinates.cpp -+++ b/core/fxcrt/fx_coordinates.cpp -@@ -302,7 +302,7 @@ std::ostream& operator<<(std::ostream& os, const CFX_RectF& rect) { - - std::tuple<float, float, float, float, float, float> CFX_Matrix::AsTuple() - const { -- return {a, b, c, d, e, f}; -+ return std::tuple<float, float, float, float, float, float>(a, b, c, d, e, f); - } - - CFX_Matrix CFX_Matrix::GetInverse() const { diff --git a/solenv/flatpak-manifest.in b/solenv/flatpak-manifest.in index ec1ac90d7e19..67b822e2f7e1 100644 --- a/solenv/flatpak-manifest.in +++ b/solenv/flatpak-manifest.in @@ -93,8 +93,8 @@ "type": "shell" }, { - "url": "https://dev-www.libreoffice.org/src/pdfium-3426.tar.bz2", - "sha256": "80331b48166501a192d65476932f17044eeb5f10faa6ea50f4f175169475c957", + "url": "https://dev-www.libreoffice.org/src/pdfium-3667.tar.bz2", + "sha256": "012ef554e7a6ec6d794f9ff7e66ff71011cab1b67317b427d9c820c48c141e5e", "type": "file", "dest-filename": "external/tarballs/pdfium-3426.tar.bz2" }, commit 77afc559c24a6bb13efda3e3f95bce7081b68018 Author: Miklos Vajna <vmik...@collabora.com> AuthorDate: Mon Nov 19 09:03:40 2018 +0100 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 external: update pdfium to 3613 Reviewed-on: https://gerrit.libreoffice.org/63547 Reviewed-by: Miklos Vajna <vmik...@collabora.com> Tested-by: Jenkins (cherry picked from commit ec11c1aee04eacb00d94a6359f959b990ddb6923) Change-Id: I99bd67f45796eb85635543a5e4563bb7477cf63e diff --git a/download.lst b/download.lst index d33ad53761b7..af6b49800cfc 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 := 572460f7f9e2f86d022a9c6a82f1e2ded6c3c29ba352d4b9fac60b87e2159679 -export PDFIUM_TARBALL := pdfium-3550.tar.bz2 +export PDFIUM_SHA256SUM := c42cdff8e18b9369bc9383e0e8c2531b5631a2712852a26d8e7593021561de89 +export PDFIUM_TARBALL := pdfium-3613.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 8283f6dd0aa1..f7406cf6d716 100644 --- a/external/pdfium/Library_pdfium.mk +++ b/external/pdfium/Library_pdfium.mk @@ -47,9 +47,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_annotiteration \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_baannot \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_baannothandler \ - UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_datetime \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_formfillenvironment \ - UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interform \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pageview \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_widget \ UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_widgethandler \ @@ -81,13 +79,14 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/fpdfsdk/fpdf_view \ UnpackedTarball/pdfium/fpdfsdk/ipdfsdk_pauseadapter \ UnpackedTarball/pdfium/fpdfsdk/cpdf_annotcontext \ + UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform \ )) # fdrm $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ - UnpackedTarball/pdfium/core/fdrm/crypto/fx_crypt \ - UnpackedTarball/pdfium/core/fdrm/crypto/fx_crypt_aes \ - UnpackedTarball/pdfium/core/fdrm/crypto/fx_crypt_sha \ + UnpackedTarball/pdfium/core/fdrm/fx_crypt \ + UnpackedTarball/pdfium/core/fdrm/fx_crypt_aes \ + UnpackedTarball/pdfium/core/fdrm/fx_crypt_sha \ )) # formfiller @@ -185,7 +184,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_color \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_colorspace \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_colorstate \ - UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_contentmark \ + UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_contentmarks \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_contentmarkitem \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_contentparser \ UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_docpagedata \ @@ -303,7 +302,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_formcontrol \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_formfield \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_iconfit \ - UnpackedTarball/pdfium/core/fpdfdoc/cpdf_interform \ + UnpackedTarball/pdfium/core/fpdfdoc/cpdf_interactiveform \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_link \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_linklist \ UnpackedTarball/pdfium/core/fpdfdoc/cpdf_metadata \ @@ -413,6 +412,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxcrt/cfx_seekablemultistream \ UnpackedTarball/pdfium/core/fxcrt/css/cfx_cssdata \ UnpackedTarball/pdfium/core/fxcrt/fx_codepage \ + UnpackedTarball/pdfium/core/fxcrt/fx_number \ UnpackedTarball/pdfium/core/fxcrt/cfx_utf8encoder \ UnpackedTarball/pdfium/core/fxcrt/cfx_readonlymemorystream \ )) @@ -468,6 +468,7 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/core/fxge/fx_ge_fontmap \ UnpackedTarball/pdfium/core/fxge/fx_ge_linux \ UnpackedTarball/pdfium/core/fxge/fx_ge_text \ + UnpackedTarball/pdfium/core/fxge/fx_font \ UnpackedTarball/pdfium/core/fxge/dib/cfx_dibbase \ )) @@ -546,6 +547,11 @@ $(eval $(call gb_Library_add_generated_exception_objects,pdfium,\ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/spin_lock \ UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_alloc \ UnpackedTarball/pdfium/third_party/base/debug/alias \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/oom_callback \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_bucket \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_oom \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_page \ + UnpackedTarball/pdfium/third_party/base/allocator/partition_allocator/partition_root_base \ )) # skia_shared diff --git a/external/pdfium/UnpackedTarball_pdfium.mk b/external/pdfium/UnpackedTarball_pdfium.mk index aaaab0c25ac1..eda4fd781e8d 100644 --- a/external/pdfium/UnpackedTarball_pdfium.mk +++ b/external/pdfium/UnpackedTarball_pdfium.mk @@ -36,7 +36,12 @@ $(eval $(call gb_UnpackedTarball_set_post_action,pdfium,\ mv third_party/base/allocator/partition_allocator/page_allocator.cc third_party/base/allocator/partition_allocator/page_allocator.cpp && \ mv third_party/base/allocator/partition_allocator/partition_alloc.cc third_party/base/allocator/partition_allocator/partition_alloc.cpp && \ mv third_party/base/allocator/partition_allocator/spin_lock.cc third_party/base/allocator/partition_allocator/spin_lock.cpp && \ - mv third_party/base/debug/alias.cc third_party/base/debug/alias.cpp \ + mv third_party/base/debug/alias.cc third_party/base/debug/alias.cpp && \ + mv third_party/base/allocator/partition_allocator/oom_callback.cc third_party/base/allocator/partition_allocator/oom_callback.cpp && \ + mv third_party/base/allocator/partition_allocator/partition_bucket.cc third_party/base/allocator/partition_allocator/partition_bucket.cpp && \ + mv third_party/base/allocator/partition_allocator/partition_oom.cc third_party/base/allocator/partition_allocator/partition_oom.cpp && \ + mv third_party/base/allocator/partition_allocator/partition_page.cc third_party/base/allocator/partition_allocator/partition_page.cpp && \ + mv third_party/base/allocator/partition_allocator/partition_root_base.cc third_party/base/allocator/partition_allocator/partition_root_base.cpp \ )) # vim: set noet sw=4 ts=4: diff --git a/external/pdfium/build.patch.1 b/external/pdfium/build.patch.1 index 721c1784719d..1a223352ddf8 100644 --- a/external/pdfium/build.patch.1 +++ b/external/pdfium/build.patch.1 @@ -147,3 +147,16 @@ index 7050f695b..916afed8b 100644 }; #endif // CORE_FPDFDOC_CPDF_FILESPEC_H_ +diff --git a/core/fxcrt/fx_coordinates.cpp b/core/fxcrt/fx_coordinates.cpp +index fabde1e80..92a423cc6 100644 +--- a/core/fxcrt/fx_coordinates.cpp ++++ b/core/fxcrt/fx_coordinates.cpp +@@ -302,7 +302,7 @@ std::ostream& operator<<(std::ostream& os, const CFX_RectF& rect) { + + std::tuple<float, float, float, float, float, float> CFX_Matrix::AsTuple() + const { +- return {a, b, c, d, e, f}; ++ return std::tuple<float, float, float, float, float, float>(a, b, c, d, e, f); + } + + CFX_Matrix CFX_Matrix::GetInverse() const { diff --git a/external/pdfium/ubsan.patch b/external/pdfium/ubsan.patch index 91428326fc5d..9939b6e9e4b6 100644 --- a/external/pdfium/ubsan.patch +++ b/external/pdfium/ubsan.patch @@ -1,9 +1,9 @@ --- core/fxcrt/string_data_template.h +++ core/fxcrt/string_data_template.h -@@ -78,7 +78,8 @@ +@@ -76,7 +76,8 @@ class StringDataTemplate { + ASSERT(nLen >= 0); + ASSERT(offset + nLen <= m_nAllocLength); - void CopyContentsAt(size_t offset, const CharType* pStr, size_t nLen) { - ASSERT(offset >= 0 && nLen >= 0 && offset + nLen <= m_nAllocLength); - memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); + if (nLen != 0) + memcpy(m_String + offset, pStr, nLen * sizeof(CharType)); commit 021187273ac8b0e7965b814da19cdbb487b44268 Author: Miklos Vajna <vmik...@collabora.co.uk> AuthorDate: Tue Sep 18 21:07:10 2018 +0200 Commit: Thorsten Behrens <thorsten.behr...@cib.de> CommitDate: Thu Dec 3 02:20:16 2020 +0100 pdfium: update to 3550 Allows dropping all the backports, so only one custom API patch remains. Reviewed-on: https://gerrit.libreoffice.org/60697 Tested-by: Jenkins Reviewed-by: Miklos Vajna <vmik...@collabora.co.uk> (cherry picked from commit 56ac8214ab35387f8861044b62c79fae6d7ccac5) Change-Id: I13dc4f62be86d0859862cbd95bb14e07bbcf53d6 diff --git a/download.lst b/download.lst index 3d848e027963..d33ad53761b7 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 := 4acbc905fee1743e96169ca155347a81fb2b0f381281109c1860aa4408ec6c4f -export PDFIUM_TARBALL := pdfium-3471.tar.bz2 +export PDFIUM_SHA256SUM := 572460f7f9e2f86d022a9c6a82f1e2ded6c3c29ba352d4b9fac60b87e2159679 +export PDFIUM_TARBALL := pdfium-3550.tar.bz2 export PIXMAN_SHA256SUM := 21b6b249b51c6800dc9553b65106e1e37d0e25df942c90531d4c3997aa20a88e ... etc. - the rest is truncated _______________________________________________ Libreoffice-commits mailing list libreoffice-comm...@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/libreoffice-commits