Age | Commit message (Collapse) | Author |
|
- drop cg-instead-of-carbon.patch.1, no longer needed after
https://pdfium-review.googlesource.com/c/pdfium/+/99753
- drop AndroidNDK19.patch.1, no longer needed after
https://pdfium-review.googlesource.com/c/pdfium/+/96530
- drop gcc-c++20-comparison.patch, no longer needed after
<https://pdfium.googlesource.com/pdfium/+/065698acf82962a3168a0d56bb1d5964bc593d00>
"Fix interaction between RetainPtr<T> and transparent comparisons" since
chromium/5321
Change-Id: I1f861dd8a3d490400bb39c108bd4e767a2f45d30
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/142474
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
...that hits at least when building with Clang and --with-latest-c++ against
recent libc++ or MSVC standard library (where C++20 and esp. C++23 made more and
more class template member functions constexpr). My understanding is that there
is some leeway at what point a compiler should instantiate such function
specializations, and Clang decides to instantiate constexpr ones early (cf.
<https://github.com/llvm/llvm-project/commit/242ad89a15d5466d166d47978bfff983d40ab511>
"C++11 half of r147023: In C++11, additionally eagerly instantiate:" and its "Do
not defer instantiations of constexpr functions" comment, and the discussion at
<https://discourse.llvm.org/t/point-of-instantiation-of-constexpr-function-template/65129>).
> In file included from workdir/UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict.cpp:7:
> In file included from workdir/UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict.h:10:
> In file included from ~/llvm/inst/bin/../include/c++/v1/memory:881:
> In file included from ~/llvm/inst/bin/../include/c++/v1/__memory/shared_ptr.h:30:
> ~/llvm/inst/bin/../include/c++/v1/__memory/unique_ptr.h:47:19: error: invalid application of 'sizeof' to an incomplete type 'CJBig2_Image'
> static_assert(sizeof(_Tp) >= 0, "cannot delete an incomplete type");
> ^~~~~~~~~~~
> ~/llvm/inst/bin/../include/c++/v1/__memory/unique_ptr.h:281:7: note: in instantiation of member function 'std::default_delete<CJBig2_Image>::operator()' requested here
> __ptr_.second()(__tmp);
> ^
> ~/llvm/inst/bin/../include/c++/v1/__memory/unique_ptr.h:247:75: note: in instantiation of member function 'std::unique_ptr<CJBig2_Image>::reset' requested here
> _LIBCPP_INLINE_VISIBILITY _LIBCPP_CONSTEXPR_SINCE_CXX23 ~unique_ptr() { reset(); }
> ^
> ~/llvm/inst/bin/../include/c++/v1/__memory/construct_at.h:64:13: note: in instantiation of member function 'std::unique_ptr<CJBig2_Image>::~unique_ptr' requested here
> __loc->~_Tp();
> ^
> ~/llvm/inst/bin/../include/c++/v1/__memory/construct_at.h:89:12: note: in instantiation of function template specialization 'std::__destroy_at<std::unique_ptr<CJBig2_Image>, 0>' requested here
> _VSTD::__destroy_at(__loc);
> ^
> ~/llvm/inst/bin/../include/c++/v1/__memory/allocator_traits.h:317:16: note: in instantiation of function template specialization 'std::destroy_at<std::unique_ptr<CJBig2_Image>, 0>' requested here
> _VSTD::destroy_at(__p);
> ^
> ~/llvm/inst/bin/../include/c++/v1/__split_buffer:304:25: note: in instantiation of function template specialization 'std::allocator_traits<std::allocator<std::unique_ptr<CJBig2_Image>>>::destroy<std::unique_ptr<CJBig2_Image>, void, void>' requested here
> __alloc_traits::destroy(__alloc(), _VSTD::__to_address(--__end_));
> ^
> ~/llvm/inst/bin/../include/c++/v1/__split_buffer:145:10: note: in instantiation of member function 'std::__split_buffer<std::unique_ptr<CJBig2_Image>, std::allocator<std::unique_ptr<CJBig2_Image>> &>::__destruct_at_end' requested here
> {__destruct_at_end(__new_last, false_type());}
> ^
> ~/llvm/inst/bin/../include/c++/v1/__split_buffer:103:10: note: in instantiation of member function 'std::__split_buffer<std::unique_ptr<CJBig2_Image>, std::allocator<std::unique_ptr<CJBig2_Image>> &>::__destruct_at_end' requested here
> {__destruct_at_end(__begin_);}
> ^
> ~/llvm/inst/bin/../include/c++/v1/__split_buffer:361:5: note: in instantiation of member function 'std::__split_buffer<std::unique_ptr<CJBig2_Image>, std::allocator<std::unique_ptr<CJBig2_Image>> &>::clear' requested here
> clear();
> ^
> ~/llvm/inst/bin/../include/c++/v1/vector:1536:49: note: in instantiation of member function 'std::__split_buffer<std::unique_ptr<CJBig2_Image>, std::allocator<std::unique_ptr<CJBig2_Image>> &>::~__split_buffer' requested here
> __split_buffer<value_type, allocator_type&> __v(__recommend(size() + 1), size(), __a);
> ^
> ~/llvm/inst/bin/../include/c++/v1/vector:1568:9: note: in instantiation of function template specialization 'std::vector<std::unique_ptr<CJBig2_Image>>::__push_back_slow_path<std::unique_ptr<CJBig2_Image>>' requested here
> __push_back_slow_path(std::move(__x));
> ^
> workdir/UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict.h:26:16: note: in instantiation of member function 'std::vector<std::unique_ptr<CJBig2_Image>>::push_back' requested here
> m_SDEXSYMS.push_back(std::move(image));
> ^
> workdir/UnpackedTarball/pdfium/core/fxcodec/jbig2/JBig2_SymbolDict.h:16:7: note: forward declaration of 'CJBig2_Image'
> class CJBig2_Image;
> ^
Change-Id: Ibaeb72eefdd58ca39ffa6bb8f6c5d7088ce51ab7
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141812
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Also backport an other patch that will allow testing date form widgets.
Change-Id: I622c847a6139c69ec36a6d40e05b272d11f0119d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141270
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
...as seen at least with --without-latest-c++ after
d0b2f5f65e80a4262425bb87d5716d7b4341dfea "pdfium: drop not needed annot.patch.1"
during CppunitTest_sw_core_text,
> workdir/UnpackedTarball/pdfium/core/fxcrt/string_data_template.cpp:76:20: runtime error: null pointer passed as argument 2, which is declared to never be null
> /usr/include/string.h:44:28: note: nonnull attribute specified here
> #0 in fxcrt::StringDataTemplate<char>::CopyContents(char const*, unsigned long) at workdir/UnpackedTarball/pdfium/core/fxcrt/string_data_template.cpp:76:3
> #1 in fxcrt::ByteString::ByteString(fxcrt::StringViewTemplate<char>, fxcrt::StringViewTemplate<char>) at workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.cpp:160:12
> #2 in fxcrt::operator+(fxcrt::ByteString const&, fxcrt::ByteString const&) at workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:265:10
> #3 in CPDFSDK_AppStream::SetAsTextField(absl::optional<fxcrt::WideString>) at workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_appstream.cpp:1805:34
> #4 in CPDFSDK_Widget::ResetAppearance(absl::optional<fxcrt::WideString>, CPDFSDK_Widget::ValueChanged) at workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_widget.cpp:655:17
> #5 in CPDFSDK_PageView::NewAnnot(CPDF_Annot*) at workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pageview.cpp:108:12
> #6 in CPDFSDK_PageView::LoadFXAnnots() at workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_pageview.cpp:566:45
> #7 in CPDFSDK_FormFillEnvironment::GetOrCreatePageView(IPDF_Page*) at workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_formfillenvironment.cpp:625:14
> #8 in (anonymous namespace)::FormHandleToPageView(fpdf_form_handle_t__*, fpdf_page_t__*) at workdir/UnpackedTarball/pdfium/fpdfsdk/fpdf_formfill.cpp:169:39
> #9 in FORM_OnAfterLoadPage at workdir/UnpackedTarball/pdfium/fpdfsdk/fpdf_formfill.cpp:730:37
> #10 in vcl::pdf::(anonymous namespace)::PDFiumPageImpl::onAfterLoadPage(vcl::pdf::PDFiumDocument*) at vcl/source/pdf/PDFiumLibrary.cxx:764:5
> #11 in testContentControlPDFFont::TestBody() at sw/qa/core/text/text.cxx:746:12
Change-Id: Iba73a9401eb10a8c03843dba038cd3a6eeeb0c4a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141210
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
(<https://www.open-std.org/jtc1/sc22/wg21/docs/papers/2022/p2468r2.html> "The
Equality Operator You Are Looking For"), as now implemented by Clang 16 trunk
since
<https://github.com/llvm/llvm-project/commit/38b9d313e6945804fffc654f849cfa05ba2c713d>
"[C++20][Clang] P2468R2 The Equality Operator You Are Looking For", and which
started to make my --with-latest-c++ build fail with
> workdir/UnpackedTarball/pdfium/fpdfsdk/cpdfsdk_interactiveform.cpp:189:22: error: invalid operands to binary expression ('const CPDF_Dictionary *' and 'RetainPtr<const CPDF_Object>')
> if (pAnnotDict == pDict)
> ~~~~~~~~~~ ^ ~~~~~
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:227:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const char *' for 1st argument
> inline bool operator==(const char* lhs, const ByteString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:227:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const ByteString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:230:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'ByteStringView' (aka 'StringViewTemplate<char>') for 1st argument
> inline bool operator==(ByteStringView lhs, const ByteString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/bytestring.h:230:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const ByteString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:285:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const wchar_t *' for 1st argument
> inline bool operator==(const wchar_t* lhs, const WideString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:285:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const WideString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:288:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'WideStringView' (aka 'StringViewTemplate<wchar_t>') for 1st argument
> inline bool operator==(WideStringView lhs, const WideString& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/widestring.h:288:13: note: candidate function (with reversed parameter order) not viable: no known conversion from 'const CPDF_Dictionary *' to 'const WideString' for 1st argument
> workdir/UnpackedTarball/pdfium/core/fxge/cfx_color.h:61:13: note: candidate function not viable: no known conversion from 'const CPDF_Dictionary *' to 'const CFX_Color' for 1st argument
> inline bool operator==(const CFX_Color& c1, const CFX_Color& c2) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/string_view_template.h:277:13: note: candidate template ignored: could not match 'StringViewTemplate' against 'RetainPtr'
> inline bool operator==(const T* lhs, const StringViewTemplate<T>& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/string_view_template.h:277:13: note: candidate template ignored: could not match 'const T *' against 'RetainPtr<const CPDF_Object>'
> workdir/UnpackedTarball/pdfium/core/fxcrt/observed_ptr.h:98:13: note: candidate template ignored: could not match 'ObservedPtr' against 'RetainPtr'
> inline bool operator==(const U* lhs, const ObservedPtr<T>& rhs) {
> ^
> workdir/UnpackedTarball/pdfium/core/fxcrt/observed_ptr.h:98:13: note: candidate template ignored: could not match 'const U *' against 'RetainPtr<const CPDF_Object>'
Change-Id: Ibef9e5515dc466431741220adebec9c6e20850e1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/141154
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
If FORM_OnAfterLoadPage() is called, then FPDFAnnot_GetFontSize() can do
what we need.
Change-Id: I8aa3acbbda5c040f30b28db36f8b3332115b50e5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140997
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Acrobat Reader shows these descriptions on mouse hovering on a form
widget.
Change-Id: I8614222e46c992baca8a57b13a948f88973e8911
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140215
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Like font name or size.
Change-Id: Ie7b0d38be0ef69faf364b7c801d0bd3fdd60777a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/140038
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
pdfium_arm64.patch.1 is now upstreamed as
<https://pdfium-review.googlesource.com/c/pdfium/+/96010>.
Change-Id: Iafb1ba480161429094db5446ab50314068ae4cfc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/139876
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
No functional changes intended, just this way the patch can be dropped
trivially the next time we update pdfium.
Change-Id: I3259e98ddd20a51e109e860e1a3ab4c138597436
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/138323
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
see https://docs.microsoft.com/en-us/cpp/intrinsics/arm64-intrinsics
Change-Id: I291f727c1aa6e00d02d2339fcb338159ae49d0c5
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137568
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
build.patch.1 is extended to avoid:
> C:/lo/master/workdir/UnpackedTarball/pdfium/third_party/libopenjpeg/openjpeg.c(438): error C2491: 'opj_decoder_set_strict_mode': definition of dllimport function not allowed
and also is extended to avoid:
> /opt/rh/devtoolset-7/root/usr/include/c++/7/bits/stl_tree.h:2028:5: note: no known conversion for argument 1 from ‘std::pair<fxcrt::RetainPtr<CPDF_Object>, std::unique_ptr<CPDF_PageObjectAvail> >::first_type {aka fxcrt::RetainPtr<CPDF_Object>}’ to ‘const CPDF_Object* const&’
Change-Id: Icacc05627a8612b33d6445685d26470e7c757b8e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/137238
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
...<https://github.com/llvm/llvm-project/commit/5ea341d7c4f9cc4933adc04ff74d59e26ad2f306>
"[clang] Fix trivially copyable for copy constructor and copy assignment
operator", which caused my build on Windows with clang-cl against the MSVC
standard library to fail with
> In file included from workdir/UnpackedTarball/pdfium/core/fxge/win32/cgdi_plus_ext.cpp:19:
> In file included from workdir/UnpackedTarball/pdfium\core/fxcrt/fx_string.h:14:
> In file included from workdir/UnpackedTarball/pdfium\core/fxcrt/bytestring.h:23:
> In file included from workdir/UnpackedTarball/pdfium\core/fxcrt/string_view_template.h:18:
> In file included from workdir/UnpackedTarball/pdfium\third_party/abseil-cpp/absl/types/optional.h:39:
> In file included from workdir/UnpackedTarball/pdfium/third_party/abseil-cpp\absl/utility/utility.h:51:
> workdir/UnpackedTarball/pdfium/third_party/abseil-cpp\absl/meta/type_traits.h(501,3): error: static_assert failed due to requirement 'compliant || std::is_trivially_copy_assignable<std::pair<unsigned long long, unsigned long long>>::value' "Not compliant with std::is_trivially_copy_assignable; Standard: false, Implementation: true"
> static_assert(compliant || std::is_trivially_copy_assignable<T>::value,
> ^ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> workdir/UnpackedTarball/pdfium/third_party/abseil-cpp\absl/types/internal/optional.h(175,21): note: in instantiation of template class 'absl::is_trivially_copy_assignable<std::pair<unsigned long long, unsigned long long>>' requested here
> absl::is_trivially_copy_assignable<typename std::remove_cv<
> ^
> workdir/UnpackedTarball/pdfium\third_party/abseil-cpp/absl/types/optional.h(119,45): note: in instantiation of default argument for 'optional_data<std::pair<unsigned long long, unsigned long long>>' required here
> class optional : private optional_internal::optional_data<T>,
> ^~~~~~~~~~~~~~~~
> workdir/UnpackedTarball/pdfium/core/fxge/win32/cgdi_plus_ext.cpp(384,43): note: in instantiation of template class 'absl::optional<std::pair<unsigned long long, unsigned long long>>' requested here
> absl::optional<std::pair<size_t, size_t>> IsSmallTriangle(
> ^
because the behavior of Clang's built-in __has_trivial_assign no longer matches
the behavior of std::is_trivially_copy_assignable for std::pair, which in MSVC
happens to be implemented with a deleted copy assignment op
> pair& operator=(const volatile pair&) = delete;
in
c:/Program Files/Microsoft Visual Studio/2022/Community/VC/Tools/MSVC/14.32.31326/include/utility.
(See the comments starting at <https://reviews.llvm.org/D127593#3596601>
"[clang] Fix trivially copyable for copy constructor and copy assignment
operator" for further details.)
The easiest workaround appears to be to switch the implementation of
absl::is_trivially_copy_assignable from __has_trivial_assign to
std::is_trivially_copy_assignable, which should always be available in our
C++17-based toolchain baselines.
Change-Id: I5d9c3c4fd95852e57d93b56752b7e64d6d71d153
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/136335
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...which is a problem presumably since GCC 13 trunk
<https://gcc.gnu.org/git/?p=gcc.git;a=commit;h=6f038efd93593da6e661b829d1bd3877e75550f1>
"libstdc++: Avoid including <cstdint> for std::char_traits". (All the broken
C++ code used unqualified uintptr_t etc. rather than std::uintptr_t etc., so I
deemed it more appropriate to include <stdint.h> rather than <cstdint>.)
Change-Id: Id9dfc383c5986126a425971c4557b90ac45ac963
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134760
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Which started to use require __builtin_is_constant_evaluated(), which
our baseline doesn't have, so patch that out for now.
Change-Id: Idd1923291a933209d18bb677d011c9353c8f8c4d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/134648
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Stop tracking build_config.h in our repo, it can be now part of the
release tarball. It was a mistake in the past to think that this is
generated code, it's just external code.
Change-Id: Ife2fed362e28c53859399244e2f1247efb1efe86
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/131695
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Change-Id: I68751a7b6ca2c8c86a412a0fd401e0d0f172297b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/128353
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I270cbb75cde2a44416b61978b8eefdf267720031
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125559
Tested-by: Jenkins
Reviewed-by: René Engelhard <rene@debian.org>
|
|
Fixes the build of Pdfium on Fedora 34 for me. No idea why it wasn't
needed on other platforms.
Change-Id: Id0d6172383970b289b6b3b7f6b5c0da998167796
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125084
Tested-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I545adce0491e48fad2bfc4003695bd96cc911f22
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/125068
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I4e86b163a9abef88f26c6c0ae91ae0a4008658f1
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122485
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I2bfd5f806281e747702d423b7e59b5f88a7bea9c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/118868
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
...or else a build with MS VS 2019 16.10.0 and --with-latest-c++ would cause a
stack overflow during CppunitTest_xmlsecurity_pdfsigning in the same way as
described at 6391e3c4dcd4d61c2f95f996e797e49b5586dbd1 "external/pdfium: Work
around GCC C++20 recursive comparison issue". Interestingly, builds with recent
Clang (on various platforms) and --with-latest-c++ do not run into that stack
overflow issue, so it appears that Clang implements subtly different rules for
C++20 and beyond here than do GCC and MSVC. (The GCC issue
<https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94141> "c++20 rewritten operator==
recursive call mixing friend and external operators for template class"
mentioned in external/pdfium/UnpackedTarball_pdfium.mk may not be the most
accurate description of the precise issue at hand here, but lets keep it at that
for now. Its comments do mention "that some people are going to try and change
the rules to avoid breaking code like this.")
But regardless of what the exact rules are for C++20 and beyond, these
problematic overloads are only needed for C++17 and earlier anyway, as C++20 can
cover them with automatic rewrites of other operators. So lets generally
disable them for C++20 and beyond.
Change-Id: I99033d6f09f069f00a6916ef40fd03dd4962a5c4
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/116882
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ib8ed1e4270b18de4761155f9aa7d536faaf7bd38
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115581
Tested-by: Jenkins
Reviewed-by: Tor Lillqvist <tml@collabora.com>
|
|
Change-Id: I38c85fb3e30ffd1f7fc0a11948fc01338f7bb205
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115444
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I618095efab0a7ed7babdabc36db6a473b1af78da
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115161
Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com>
Reviewed-by: Andras Timar <andras.timar@collabora.com>
(cherry picked from commit 01765acee6b4931b6c69252b8357f81fd26e33bd)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/115090
Tested-by: Jenkins
|
|
Change-Id: I93b9a32a82098a7b45e899ef29349c48276aa724
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113067
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
For it to compile, the inclusion of <Carbon/Carbon.h> had to be
replaced with <CoreGraphics/CoreGraphics.h>. That doesn't harm the
macOS build either.
This fixes the crash in
https://github.com/CollaboraOnline/online/issues/1710 . I am not
entirely sure yet whether the actual PDF import functionality now then
works in the iOS app, though.
Change-Id: Ie25e7c58632c0fdddb569d58217f23b26d1e5937
Signed-off-by: Tor Lillqvist <tml@collabora.com>
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/112571
Tested-by: Jenkins
|
|
since it's apparently not needed. builds fine even after removing it
Change-Id: I5626c8f9920c3e33d91afd51610b815ffae4ed86
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/110131
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Allows dropping 5 upstreamed patches.
Change-Id: I5f77502c5a2d11288b060956e69fd7767f52ab97
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109195
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
So that vcl/ already uses the upstreamed API and the patches can be just
dropped on the next pdfium upgrade.
Change-Id: I58f6a4cca37677788d9a2e4e31c2e89d074ad5ae
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/108140
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Fixes the problem that sometimes a valid sig is detected as a partial
one.
Change-Id: I68107569bf8c331170902b1918a70ea4b9b659a2
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/107856
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
All the needed API is already in the version we bundle, except one. And
also we'll need direct access to the underling pdfium document, for now.
Change-Id: Ib5c87c95072401b1a6ca0151177d70b4bcd8c46d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105610
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Ic10cf99fa412f8f0b3475e82d0a1839a7f04bd08
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105272
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I3e596254b2e4ecc9f56ff09eeb63b66195ea6a2e
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104376
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
This extends PDFium with readon of "Border" property from the
PDF annotations and adds the API to PDFium wrapper.
Border is mostly used for border (line) width and the radius of
rounding of the border (for drawing a rounded rectangle for
example).
Change-Id: I03f189eee03155ec699b2f56ceed23e6839a3f03
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/104361
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
This extends PDFium with getting InkStrokes and Vertices for
annotations, which wasn't implemented before, and adds support to
PDFium wrapper in LibreOffice.
Change-Id: I570d53038a59ab830fcd5639583c75cf8adda86c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103885
Tested-by: Jenkins
Reviewed-by: Tomaž Vajngerl <quikee@gmail.com>
|
|
Change-Id: I41a204fbc5e2c9b819fb948c5288f8d7b4195489
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/103117
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: Ie8698bd51b897ba8d07c278cbbd9ad2d3caa4bb3
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102856
Tested-by: Jenkins
Reviewed-by: Jan-Marek Glogowski <glogow@fbihome.de>
|
|
Change-Id: I1b6c7e9991b2e35921f7f849380d940c6662b174
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102787
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
...that caused CppunitTest_xmlsecurity_pdfsigning to crash with recent GCC and
--with-latest-c++ due to an infinite recursion at
[...]
> #260048 0x00007fe0dbf91a4f in fxcrt::operator==<CPDF_Array const, CPDF_Object>(CPDF_Object const*, fxcrt::RetainPtr<CPDF_Array const> const&) (lhs=0x2342870, rhs=...) at workdir/UnpackedTarball/pdfium/core/fxcrt/retain_ptr.h:140
> #260049 0x00007fe0dbf91a4f in fxcrt::operator==<CPDF_Array const, CPDF_Object>(CPDF_Object const*, fxcrt::RetainPtr<CPDF_Array const> const&) (lhs=0x2342870, rhs=...) at workdir/UnpackedTarball/pdfium/core/fxcrt/retain_ptr.h:140
> #260050 0x00007fe0dbf8e30d in (anonymous namespace)::CPDF_DeviceNCS::v_Load(CPDF_Document*, CPDF_Array const*, std::__debug::set<CPDF_Object const*, std::less<CPDF_Object const*>, std::allocator<CPDF_Object const*> >*) (this=0x1956e30, pDoc=0x172a770, pArray=0x2343320, pVisited=0x7ffcf2f2dd50) at workdir/UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_colorspace.cpp:1299
> #260051 0x00007fe0dbf8a73f in CPDF_ColorSpace::Load(CPDF_Document*, CPDF_Object const*, std::__debug::set<CPDF_Object const*, std::less<CPDF_Object const*>, std::allocator<CPDF_Object const*> >*) (pDoc=0x172a770, pObj=0x2343320, pVisited=0x7ffcf2f2dd50) at workdir/UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_colorspace.cpp:545
> #260052 0x00007fe0dbfa4c01 in CPDF_DocPageData::GetColorSpaceInternal(CPDF_Object const*, CPDF_Dictionary const*, std::__debug::set<CPDF_Object const*, std::less<CPDF_Object const*>, std::allocator<CPDF_Object const*> >*, std::__debug::set<CPDF_Object const*, std::less<CPDF_Object const*>, std::allocator<CPDF_Object const*> >*) (this=0x1737a70, pCSObj=0x2343320, pResources=0x0, pVisited=0x7ffcf2f2dd50, pVisitedInternal=0x7ffcf2f2dcc0) at workdir/UnpackedTarball/pdfium/core/fpdfapi/page/cpdf_docpagedata.cpp:317
[...]
(See the linked GCC bug report for further details.)
Change-Id: I8cc1ff0b6e5693b987e6c6c9b2efed7990d0869f
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/102330
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ib712fa5494e5461ef59252a0e832d43eabccbee0
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/99157
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Ib7c12461e04fa97bf55ee967e8d6c9bcf92fdf4a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/94078
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: Iab30effaae86a54852196d6e29d39118e0a2f70c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/90667
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
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.
Change-Id: I8483d0aa5b4fea5a59107c20a8aa5f1ef694af0a
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87799
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
So next time we update, no need to adapt a failing patch.
Change-Id: I785f16047d1decbf922177fdde4bc6aad7cfebfc
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/87215
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
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)
Change-Id: I48cfc8ce37287d9d3c0dec8c4d8b14b53de895d9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86993
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1c3280e811bf65641bf559e3f01bc62e609548f9
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/86811
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
Tested-by: Jenkins
|
|
Also simplify visibility.patch.1.
Change-Id: I8b4ed78b314a1a1f7d31467f782877f056429cc2
Reviewed-on: https://gerrit.libreoffice.org/82548
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Change-Id: I7b3a22584bb2e4d501f509ffcd80929feed23a4c
Reviewed-on: https://gerrit.libreoffice.org/79360
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|