Age | Commit message (Collapse) | Author |
|
This attempt tries to avoid affecting other .wk1 files as well.
The old fix was even applied to the wrong patch section, not done for
MacOSX or Windows. Geez..
Change-Id: Ia79383f33ff760cba9bfb44f166e27f3ef212c57
Reviewed-on: https://gerrit.libreoffice.org/83431
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
Fixes CVE-2019-18197.
Remove obsolete e03553605b45c88f0b4b2980adfbbb8f6fca2fd6.patch.1.
Change-Id: I95cf498e245083528f98bfef8cdd240bbe2211b9
Reviewed-on: https://gerrit.libreoffice.org/83312
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
... which is, surprisingly enough, required to build the latest libxslt.
Change-Id: Ifbb36ed61b8f68185f9c788f63a8edeb58899f94
Reviewed-on: https://gerrit.libreoffice.org/83311
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
fixes CVE-2019-9903 CVE-2019-9631 CVE-2019-9545 CVE-2019-9543
CVE-2019-14494 CVE-2019-12293 CVE-2019-11026 CVE-2019-10873
CVE-2019-10872 CVE-2019-10871 CVE-2019-10018
remove obsolete 0001-ImageStream-getLine-fix-crash-on-broken-files.patch.1
Change-Id: I72b3bf89b294ed3e24157c7e75fd58d4f68d9f35
Reviewed-on: https://gerrit.libreoffice.org/83308
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Fixes CVE-2019-9948 CVE-2019-9740 CVE-2019-10160 CVE-2019-16056
and expat CVE-2019-15903.
python-3.3.5-pyexpat-symbols.patch.1 fails to apply, and it's a
mystery why --with-system-expat is used everywhere but on MacOSX,
where 292af048ace2d4b455b2da3a22c784cb05db1d09 disabled it for no
obvious reason, so try to remove the special case and get rid of the
patch.
Change-Id: I5ba4532eb6e7c2fb90daba95d132dcc7c9013d96
Reviewed-on: https://gerrit.libreoffice.org/83117
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
Change-Id: I69c4c31330fde135b6ff6c0c1c72f613f0cc4b1d
Reviewed-on: https://gerrit.libreoffice.org/82551
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
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>
|
|
On Fedora 31, this happens in CppunitTest_sccomp_solver:
- loading component library <file:///work/lo/master/instdir/program/libsolverlo.so> failed
> nm -D instdir/program/libCbcSolver.so.3 | grep cbc_glp_prob
U cbc_glp_prob
> grep -r COIN_HAS_GLPK workdir/UnpackedTarball/coinmp | grep config.h
workdir/UnpackedTarball/coinmp/Osi/src/Osi/config.h:/* #undef COIN_HAS_GLPK */
workdir/UnpackedTarball/coinmp/Clp/src/config.h.in:#undef COIN_HAS_GLPK
workdir/UnpackedTarball/coinmp/Cbc/src/config.h:#define COIN_HAS_GLPK 1
workdir/UnpackedTarball/coinmp/CoinUtils/src/config.h.in:#undef COIN_HAS_GLPK
Somehow 2 different configures in coinmp got different ideas about
whether something named "glpk" is available.... no idea what that is,
it looks like there's a "glpk-devel" package installed on the system,
and i doubt that a dependency on that would be desirable.
Change-Id: Ief01b6aedc692197c1a8fd6351aef4281e530e70
Reviewed-on: https://gerrit.libreoffice.org/81863
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@cib.de>
|
|
sberg says: On Windows, implicit --enable-extras first causes a build breaker
in workdir/UnpackedTarball/icu/source/extras/scrptrun when linking, because
Windows link.exe doesn't understand -o. But even with a patch
> --- source/extra/scrptrun/Makefile.in
> +++ source/extra/scrptrun/Makefile.in
> @@ -74,7 +74,7 @@
> && CONFIG_FILES=$(subdir)/$@ CONFIG_HEADERS= $(SHELL) ./config.status
>
> $(TARGET) : $(OBJECTS)
> - $(LINK.cc) -o $@ $^ $(LIBS)
> + $(LINK.cc) $(OUTOPT)$@ $^ $(LIBS)
> $(POST_BUILD_STEP)
>
> invoke:
linking would still fail with a missing ../../lib/icuucdd.lib, which is
apparently expanded from $(LIBS) there, but I have no idea where it should be
built but isn't. Lets hope that --disable-extras is sufficient for our needs.
Change-Id: I6d0117b230caa41abf488fcd069028e3474700f8
Reviewed-on: https://gerrit.libreoffice.org/81632
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
external/icu/clang-cl.patch has been dropped by
398e1e6ae83999eea8fb8c845190667695ac115f "Upgrade to ICU 64.2"
Change-Id: Ic1ab2b02820cc15f9b14bdaab4554e1da5234623
Reviewed-on: https://gerrit.libreoffice.org/81638
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), as seen during ExternalProject_icu:
> rbutil.c:49:67: runtime error: applying non-zero offset 1 to null pointer
> #0 in get_basename at workdir/UnpackedTarball/icu/source/tools/genrb/rbutil.c:49:67
> #1 in make_res_filename(char const*, char const*, char const*, UErrorCode&) at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:768:5
> #2 in processFile(char const*, char const*, char const*, char const*, char const*, SRBRoot*, signed char, UErrorCode&) at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:695:14
> #3 in main at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:527:9
> rbutil.c:54:67: runtime error: applying non-zero offset 1 to null pointer
> #0 in get_basename at workdir/UnpackedTarball/icu/source/tools/genrb/rbutil.c:54:67
> #1 in make_res_filename(char const*, char const*, char const*, UErrorCode&) at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:768:5
> #2 in processFile(char const*, char const*, char const*, char const*, char const*, SRBRoot*, signed char, UErrorCode&) at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:695:14
> #3 in main at workdir/UnpackedTarball/icu/source/tools/genrb/genrb.cpp:527:9
(uprv_strrchr appears to be plain strrchr, see
workdir/UnpackedTarball/icu/source/common/cstring.h, so returns null for "not
found", and in both of the fixed places, the following
if(lastSlash>filename)
was apparently meant to filter out cases where uprv_strrchr returned null.)
Change-Id: I32b3a72955d33d73fa4295cf5f91a69fd270efeb
Reviewed-on: https://gerrit.libreoffice.org/81613
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
As an interim step to upgrade to ICU 65.1
Adds new scripts and Unicode blocks from Unicode 12.
Change-Id: Idc4a6b29ffb04bcb424522fcbd29a8db0428c056
Reviewed-on: https://gerrit.libreoffice.org/81611
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0174r2.html#4.2>
"Deprecating Vestigial Library Parts in C++17" deprecated, among others,
std::allocator::rebind and std::allocator::allocate's hint parameter, and
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0619r4.html#3.9>
"Reviewing Deprecated Facilities of C++17 for C++20" removed them completely.
(And <https://gcc.gnu.org/git/?p=gcc.git;a=commit;
h=954026a7a4e6a1affd1ac5db237ccd75a3316760> "Remove redundant std::allocator
members for C++20" removed them from libstdc++ now for -std=c++2a.)
The change to boost/bimap/detail/bimap_core.hpp was necessary in
Library_pdfimport:
> In file included from workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:61,
> from external/boost/include/boost/bimap/bimap.hpp:30,
> from sdext/source/pdfimport/inc/pdfiprocessor.hxx:49,
> from sdext/source/pdfimport/pdfiadaptor.cxx:27:
> workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp: In instantiation of ‘class boost::bimaps::detail::bimap_core<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int>, mpl_::na, mpl_::na, mpl_::na>’:
> workdir/UnpackedTarball/boost/boost/bimap/bimap.hpp:133:7: required from ‘class boost::bimaps::bimap<boost::bimaps::unordered_set_of<pdfi::GraphicsContext, pdfi::GraphicsContextHash>, boost::bimaps::unordered_set_of<int> >’
> sdext/source/pdfimport/inc/pdfiprocessor.hxx:190:44: required from here
> workdir/UnpackedTarball/boost/boost/bimap/detail/bimap_core.hpp:410:7: error: no class template named ‘rebind’ in ‘boost::bimaps::detail::manage_additional_parameters<mpl_::na, mpl_::na, mpl_::na>::case_NNN::allocator’ {aka ‘class std::allocator<void>’}
> 410 | > core_type;
> | ^~~~~~~~~
[...]
The change to boost/format/alt_sstream_impl.hpp was necessary in
ExternalProject_libpagemaker:
> In file included from libpagemaker_utils.h:22,
> from geometry.h:20,
> from OutputShape.h:17,
> from OutputShape.cpp:10:
> external/boost/include/boost/cstdint.hpp:30:2: warning: #include_next is a GCC extension
> 30 | #include_next <boost/cstdint.hpp>
> | ^~~~~~~~~~~~
> In file included from workdir/UnpackedTarball/boost/boost/format/alt_sstream.hpp:174,
> from workdir/UnpackedTarball/boost/boost/format/internals.hpp:24,
> from workdir/UnpackedTarball/boost/boost/format.hpp:38,
> from PMDExceptions.h:15,
> from OutputShape.h:16,
> from OutputShape.cpp:10:
> workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp: In instantiation of ‘boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type boost::io::basic_altstringbuf<Ch, Tr, Alloc>::overflow(boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type) [with Ch = char; Tr = std::char_traits<char>; Alloc = std::allocator<char>; boost::io::basic_altstringbuf<Ch, Tr, Alloc>::int_type = int]’:
> workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:227:9: required from here
> workdir/UnpackedTarball/boost/boost/format/alt_sstream_impl.hpp:261:45: error: no matching function for call to ‘std::allocator<char>::allocate(std::size_t&, char*)’
> 261 | newptr = alloc_.allocate(new_size, is_allocated_? oldptr : 0);
> | ~~~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> In file included from gcc/trunk/inst/include/c++/10.0.0/memory:64,
> from OutputShape.h:13,
> from OutputShape.cpp:10:
> gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate: ‘constexpr _Tp* std::allocator< <template-parameter-1-1> >::allocate(std::size_t) [with _Tp = char; std::size_t = long unsigned int]’
> 164 | allocate(size_t __n)
> | ^~~~~~~~
> gcc/trunk/inst/include/c++/10.0.0/bits/allocator.h:164:7: note: candidate expects 1 argument, 2 provided
Change-Id: Id423f7597fe2e84e57df1d48a2ecc4d636c4a913
Reviewed-on: https://gerrit.libreoffice.org/81584
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2016/p0174r2.html#4.2>
"Deprecating Vestigial Library Parts in C++17" deprecated, among others,
std::allocator::pointer, and
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2018/p0619r4.html#3.9>
"Reviewing Deprecated Facilities of C++17 for C++20" removed it completely.
(And <https://gcc.gnu.org/git/?p=gcc.git;a=commit;
h=954026a7a4e6a1affd1ac5db237ccd75a3316760> "Remove redundant std::allocator
members for C++20" removed it from libstdc++ now for -std=c++2a.)
The change to src/common/memory.h was necessary in Library_crashreport:
> In file included from workdir/UnpackedTarball/breakpad/src/client/linux/dump_writer_common/thread_info.h:37,
> from workdir/UnpackedTarball/breakpad/src/client/linux/minidump_writer/linux_dumper.h:51,
> from workdir/UnpackedTarball/breakpad/src/client/linux/minidump_writer/minidump_writer.h:41,
> from workdir/UnpackedTarball/breakpad/src/client/linux/handler/exception_handler.h:42,
> from desktop/source/app/crashreport.cxx:29:
> workdir/UnpackedTarball/breakpad/src/common/memory.h: In instantiation of ‘struct google_breakpad::PageStdAllocator<int>’:
> gcc/trunk/inst/include/c++/10.0.0/bits/stl_vector.h:84:21: required from ‘struct std::__cxx1998::_Vector_base<int, google_breakpad::PageStdAllocator<int> >’
> gcc/trunk/inst/include/c++/10.0.0/bits/stl_vector.h:386:11: required from ‘class std::__cxx1998::vector<int, google_breakpad::PageStdAllocator<int> >’
> gcc/trunk/inst/include/c++/10.0.0/debug/vector:118:11: required from ‘class std::__debug::vector<int, google_breakpad::PageStdAllocator<int> >’
> workdir/UnpackedTarball/breakpad/src/common/memory.h:197:7: required from ‘class google_breakpad::wasteful_vector<int>’
> workdir/UnpackedTarball/breakpad/src/client/linux/minidump_writer/linux_dumper.h:187:26: required from here
> workdir/UnpackedTarball/breakpad/src/common/memory.h:165:47: error: no type named ‘pointer’ in ‘class std::allocator<int>’
> 165 | typedef typename std::allocator<T>::pointer pointer;
> | ^~~~~~~
Change-Id: Id7559456cc75311837aaa9f3a531f8820d5f593d
Reviewed-on: https://gerrit.libreoffice.org/81585
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: If4bed7d12570ff126bec8638480430796f0e89f8
Reviewed-on: https://gerrit.libreoffice.org/81462
Tested-by: Jenkins
Reviewed-by: Julien Nabet <serval2412@yahoo.fr>
|
|
...as seen with recent Clang 10 trunk clang-cl:
> In file included from vcl/source/gdi/salgdilayout.cxx:24:
> In file included from vcl/inc\openglgdiimpl.hxx:31:
> In file included from vcl/inc/opengl/RenderList.hxx:16:
> In file included from workdir/UnpackedTarball/glm\glm/glm.hpp:98:
> In file included from workdir/UnpackedTarball/glm\glm/./core/type.hpp:32:
> In file included from workdir/UnpackedTarball/glm\glm/core/type_half.hpp:116:
> workdir/UnpackedTarball/glm\glm/core/type_half.inl(43,6): error: compound assignment to object of volatile-qualified type 'volatile float' is deprecated [-Werror,-Wdeprecated-volatile]
> f *= f; // this will overflow before
> ^
Change-Id: I97fdfc0650344db1401cdce126f6755df00c5a0e
Reviewed-on: https://gerrit.libreoffice.org/81427
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), as seen during CppunitTest_emfio_emf:
> hb-ot-layout-gsubgpos.hh:390:20: runtime error: applying non-zero offset 2 to null pointer
> #0 in OT::hb_ot_apply_context_t::skipping_iterator_t::next() at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:390:20
> #1 in OT::PairPosFormat1::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gpos-table.hh:910:22
> #2 in bool OT::hb_get_subtables_context_t::apply_to<OT::PairPosFormat1>(void const*, OT::hb_ot_apply_context_t*) at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:625:23
> #3 in OT::hb_get_subtables_context_t::hb_applicable_t::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:643:62
> #4 in OT::hb_ot_layout_lookup_accelerator_t::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:2624:24
> #5 in apply_forward(OT::hb_ot_apply_context_t*, OT::hb_ot_layout_lookup_accelerator_t const&) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1811:24
> #6 in void apply_string<GPOSProxy>(OT::hb_ot_apply_context_t*, GPOSProxy::Lookup const&, OT::hb_ot_layout_lookup_accelerator_t const&) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1864:11
> #7 in void hb_ot_map_t::apply<GPOSProxy>(GPOSProxy const&, hb_ot_shape_plan_t const*, hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1910:7
> #8 in hb_ot_map_t::position(hb_ot_shape_plan_t const*, hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1933:3
> #9 in hb_ot_shape_plan_t::position(hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:266:9
> #10 in hb_ot_position_complex(hb_ot_shape_context_t const*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:951:12
> #11 in hb_ot_position(hb_ot_shape_context_t const*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:994:3
> #12 in hb_ot_shape_internal(hb_ot_shape_context_t*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:1065:3
> #13 in _hb_ot_shape at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:1088:3
> #14 in hb_shape_plan_execute at workdir/UnpackedTarball/harfbuzz/src/./hb-shaper-list.hh:42:1
> #15 in hb_shape_full at workdir/UnpackedTarball/harfbuzz/src/hb-shape.cc:139:19
> #16 in GenericSalLayout::LayoutText(ImplLayoutArgs&, SalLayoutGlyphs const*) at vcl/source/gdi/CommonSalLayout.cxx:463:23
> #17 in OutputDevice::ImplLayout(rtl::OUString const&, int, int, Point const&, long, long const*, SalLayoutFlags, vcl::TextLayoutCache const*, SalLayoutGlyphs const*) const at vcl/source/outdev/text.cxx:1312:36
> #18 in OutputDevice::GetTextBoundRect(tools::Rectangle&, rtl::OUString const&, int, int, int, unsigned long, long const*, SalLayoutGlyphs const*) const at vcl/source/outdev/text.cxx:2334:18
> #19 in drawinglayer::primitive2d::TextLayouterDevice::getTextBoundRect(rtl::OUString const&, unsigned int, unsigned int) const at drawinglayer/source/primitive2d/textlayoutdevice.cxx:297:26
> #20 in drawinglayer::primitive2d::TextSimplePortionPrimitive2D::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/textprimitive2d.cxx:305:63
> #21 in drawinglayer::primitive2d::getB2DRangeFromPrimitive2DReference(com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive2D> const&, drawinglayer::geometry::ViewInformation2D const&) at drawinglayer/source/primitive2d/baseprimitive2d.cxx:175:48
> #22 in drawinglayer::primitive2d::Primitive2DContainer::getB2DRange(drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/baseprimitive2d.cxx:199:36
> #23 in drawinglayer::primitive2d::MetafilePrimitive2D::create2DDecomposition(drawinglayer::primitive2d::Primitive2DContainer&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/metafileprimitive2d.cxx:51:67
> #24 in drawinglayer::primitive2d::BufferedDecompositionPrimitive2D::get2DDecomposition(drawinglayer::primitive2d::Primitive2DDecompositionVisitor&, drawinglayer::geometry::ViewInformation2D const&) const at drawinglayer/source/primitive2d/baseprimitive2d.cxx:126:17
> #25 in drawinglayer::tools::Primitive2dXmlDump::decomposeAndWrite(drawinglayer::primitive2d::Primitive2DContainer const&, tools::XmlWriter&) at drawinglayer/source/tools/primitive2dxmldump.cxx:332:38
> #26 in drawinglayer::tools::Primitive2dXmlDump::dumpAndParse(drawinglayer::primitive2d::Primitive2DContainer const&, rtl::OUString const&) at drawinglayer/source/tools/primitive2dxmldump.cxx:130:5
> #27 in (anonymous namespace)::Test::checkRectPrimitive(com::sun::star::uno::Sequence<com::sun::star::uno::Reference<com::sun::star::graphic::XPrimitive2D> > const&) at emfio/qa/cppunit/emf/EmfImportTest.cxx:80:34
> #28 in (anonymous namespace)::Test::testWorking() at emfio/qa/cppunit/emf/EmfImportTest.cxx:94:5
and similarly during CppunitTest_vcl_complextext:
> hb-ot-layout-gsubgpos.hh:417:20: runtime error: applying non-zero offset 2 to null pointer
> #0 in OT::hb_ot_apply_context_t::skipping_iterator_t::prev() at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:417:20
> #1 in OT::MarkMarkPosFormat1::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gpos-table.hh:1541:22
> #2 in bool OT::hb_get_subtables_context_t::apply_to<OT::MarkMarkPosFormat1>(void const*, OT::hb_ot_apply_context_t*) at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:625:23
> #3 in OT::hb_get_subtables_context_t::hb_applicable_t::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:643:62
> #4 in OT::hb_ot_layout_lookup_accelerator_t::apply(OT::hb_ot_apply_context_t*) const at workdir/UnpackedTarball/harfbuzz/src/./hb-ot-layout-gsubgpos.hh:2624:24
> #5 in apply_forward(OT::hb_ot_apply_context_t*, OT::hb_ot_layout_lookup_accelerator_t const&) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1811:24
> #6 in void apply_string<GPOSProxy>(OT::hb_ot_apply_context_t*, GPOSProxy::Lookup const&, OT::hb_ot_layout_lookup_accelerator_t const&) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1864:11
> #7 in void hb_ot_map_t::apply<GPOSProxy>(GPOSProxy const&, hb_ot_shape_plan_t const*, hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1910:7
> #8 in hb_ot_map_t::position(hb_ot_shape_plan_t const*, hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-layout.cc:1933:3
> #9 in hb_ot_shape_plan_t::position(hb_font_t*, hb_buffer_t*) const at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:266:9
> #10 in hb_ot_position_complex(hb_ot_shape_context_t const*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:951:12
> #11 in hb_ot_position(hb_ot_shape_context_t const*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:994:3
> #12 in hb_ot_shape_internal(hb_ot_shape_context_t*) at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:1065:3
> #13 in _hb_ot_shape at workdir/UnpackedTarball/harfbuzz/src/hb-ot-shape.cc:1088:3
> #14 in hb_shape_plan_execute at workdir/UnpackedTarball/harfbuzz/src/./hb-shaper-list.hh:42:1
> #15 in hb_shape_full at workdir/UnpackedTarball/harfbuzz/src/hb-shape.cc:139:19
> #16 in GenericSalLayout::LayoutText(ImplLayoutArgs&, SalLayoutGlyphs const*) at vcl/source/gdi/CommonSalLayout.cxx:463:23
> #17 in OutputDevice::ImplLayout(rtl::OUString const&, int, int, Point const&, long, long const*, SalLayoutFlags, vcl::TextLayoutCache const*, SalLayoutGlyphs const*) const at vcl/source/outdev/text.cxx:1312:36
> #18 in OutputDevice::GetTextArray(rtl::OUString const&, long*, int, int, vcl::TextLayoutCache const*, SalLayoutGlyphs const*) const at vcl/source/outdev/text.cxx:961:45
> #19 in VclComplexTextTest::testArabic() at vcl/qa/cppunit/complextext.cxx:81:32
I have no idea whether this even remotely resembles a useful fix, though.
Change-Id: I7671b84374cf119e173406bc60f6631a64dfc794
Reviewed-on: https://gerrit.libreoffice.org/81400
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), as seen during CppunitTest_sccomp_solver:
> ../lp_presolve.c:171:34: runtime error: applying non-zero offset 8 to null pointer
> #0 in presolve_rebuildUndo at workdir/UnpackedTarball/lpsolve/lpsolve55/../lp_presolve.c:171:34
> #1 in postsolve at workdir/UnpackedTarball/lpsolve/lpsolve55/../lp_presolve.c:5673:5
> #2 in spx_solve at workdir/UnpackedTarball/lpsolve/lpsolve55/../lp_simplex.c:2067:9
> #3 in lin_solve at workdir/UnpackedTarball/lpsolve/lpsolve55/../lp_simplex.c:2159:12
> #4 in LpsolveSolver::solve() at sccomp/source/solver/LpsolveSolver.cxx:295:19
> #5 in (anonymous namespace)::LpSolverTest::testSolver(rtl::OUString const&) at sccomp/qa/unit/solver.cxx:106:14
> #6 in (anonymous namespace)::LpSolverTest::testLpSolver() at sccomp/qa/unit/solver.cxx:69:5
I have no idea whether this even remotely resembles a useful fix, though.
Change-Id: I1a2796d3849967576f400737082e7377566aece9
Reviewed-on: https://gerrit.libreoffice.org/81321
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ifaacb82478b16e102108d32488a2807489c46901
Reviewed-on: https://gerrit.libreoffice.org/81320
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), as seen during CppunitTest_sw_ooxmlexport:
> raptor_rfc2396.c:389:23: runtime error: applying non-zero offset 2 to null pointer
> #0 in raptor_uri_normalize_path at workdir/UnpackedTarball/raptor/src/raptor_rfc2396.c:389:23
> #1 in raptor_uri_resolve_uri_reference at workdir/UnpackedTarball/raptor/src/raptor_rfc2396.c:617:21
> #2 in raptor_new_uri_relative_to_base_counted at workdir/UnpackedTarball/raptor/src/raptor_uri.c:293:19
> #3 in raptor_new_uri_relative_to_base at workdir/UnpackedTarball/raptor/src/raptor_uri.c:319:10
> #4 in raptor_rdfxml_end_element_grammar at workdir/UnpackedTarball/raptor/src/raptor_rdfxml.c:2613:32
> #5 in raptor_rdfxml_end_element_handler at workdir/UnpackedTarball/raptor/src/raptor_rdfxml.c:850:5
> #6 in raptor_sax2_end_element at workdir/UnpackedTarball/raptor/src/raptor_sax2.c:867:7
> #7 in xmlParseTryOrFinish at workdir/UnpackedTarball/libxml2/parser.c:11386:8
> #8 in xmlParseChunk__internal_alias at workdir/UnpackedTarball/libxml2/parser.c:12244:13
> #9 in raptor_sax2_parse_chunk at workdir/UnpackedTarball/raptor/src/raptor_sax2.c:534:10
> #10 in raptor_rdfxml_parse_chunk at workdir/UnpackedTarball/raptor/src/raptor_rdfxml.c:1169:8
> #11 in raptor_parser_parse_chunk at workdir/UnpackedTarball/raptor/src/raptor_parse.c:482:10
> #12 in librdf_parser_raptor_parse_as_stream_common at <null> (instdir/program/librdf-lo.so.0 +0x11ee39)
> #13 in librdf_parser_raptor_parse_counted_string_as_stream at <null> (instdir/program/librdf-lo.so.0 +0x117ca4)
> #14 in librdf_parser_parse_counted_string_as_stream at <null> (instdir/program/librdf-lo.so.0 +0x111967)
> #15 in (anonymous namespace)::librdf_Repository::importGraph(short, com::sun::star::uno::Reference<com::sun::star::io::XInputStream> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&) at unoxml/source/rdf/librdf_repository.cxx:1048:9
> #17 in sfx2::readStream(sfx2::DocumentMetadataAccess_Impl&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, rtl::OUString const&, rtl::OUString const&) at sfx2/source/doc/DocumentMetadataAccess.cxx:606:36
> #18 in sfx2::initLoading(sfx2::DocumentMetadataAccess_Impl&, com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionHandler> const&) at sfx2/source/doc/DocumentMetadataAccess.cxx:763:9
> #19 in sfx2::DocumentMetadataAccess::loadMetadataFromStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionHandler> const&) at sfx2/source/doc/DocumentMetadataAccess.cxx:1126:5
> #20 in SfxBaseModel::loadMetadataFromStorage(com::sun::star::uno::Reference<com::sun::star::embed::XStorage> const&, com::sun::star::uno::Reference<com::sun::star::rdf::XURI> const&, com::sun::star::uno::Reference<com::sun::star::task::XInteractionHandler> const&) at sfx2/source/doc/sfxbasemodel.cxx:4411:15
> #21 in XMLReader::Read(SwDoc&, rtl::OUString const&, SwPaM&, rtl::OUString const&) at sw/source/filter/xml/swxml.cxx:810:19
> #22 in SwReader::Read(Reader const&) at sw/source/filter/basflt/shellio.cxx:188:22
> #23 in SwDocShell::Load(SfxMedium&) at sw/source/uibase/app/docshini.cxx:546:37
> #24 in SfxObjectShell::LoadOwnFormat(SfxMedium&) at sfx2/source/doc/objstor.cxx:3040:20
> #25 in SfxObjectShell::DoLoad(SfxMedium*) at sfx2/source/doc/objstor.cxx:696:40
> #26 in SfxBaseModel::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at sfx2/source/doc/sfxbasemodel.cxx:1851:36
> #27 in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&, com::sun::star::uno::Reference<com::sun::star::frame::XFrame> const&) at sfx2/source/view/frmload.cxx:691:28
> #28 in framework::LoadEnv::impl_loadContent() at framework/source/loadenv/loadenv.cxx:1157:37
> #29 in framework::LoadEnv::startLoading() at framework/source/loadenv/loadenv.cxx:390:20
> #30 in framework::LoadEnv::loadComponentFromURL(com::sun::star::uno::Reference<com::sun::star::frame::XComponentLoader> const&, com::sun::star::uno::Reference<com::sun::star::uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/loadenv/loadenv.cxx:171:14
> #31 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx:621:12
> #32 in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at framework/source/services/desktop.cxx
> #33 in unotest::MacrosTest::loadFromDesktop(rtl::OUString const&, rtl::OUString const&, com::sun::star::uno::Sequence<com::sun::star::beans::PropertyValue> const&) at unotest/source/cpp/macros_test.cxx:48:62
> #34 in SwModelTestBase::loadURL(rtl::OUString const&, char const*, char const*) at sw/qa/extras/inc/swmodeltestbase.hxx:765:23
> #35 in SwModelTestBase::load(rtl::OUString const&, char const*, char const*) at sw/qa/extras/inc/swmodeltestbase.hxx:720:16
> #36 in SwModelTestBase::executeImportExportImportTest(char const*, char const*) at sw/qa/extras/inc/swmodeltestbase.hxx:290:9
> #37 in testTdf118393::Import_Export_Import() at sw/qa/extras/ooxmlexport/ooxmlexport.cxx:84:1
Presumably, `cur` can legitimately be null there and the `s == (cur+2)` check
was intended to always be false when `cur` is null?
Change-Id: I0e3b762d5868933e586eb8f2255148f88a54e908
Reviewed-on: https://gerrit.libreoffice.org/81318
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
There are three patterns here:
* Missing const (source/common/uvector.cpp, source/common/uvector.h): Overload
resolution ambiguities when a synthesized canditate 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:
> uniset.cpp:360:18: error: use of overloaded operator '!=' is ambiguous (with operand types 'icu_63::UVector' and 'icu_63::UVector')
> if (*strings != *o.strings) return FALSE;
> ~~~~~~~~ ^ ~~~~~~~~~~
> ./uvector.h:385:23: note: candidate function
> inline UBool UVector::operator!=(const UVector& other) {
> ^
> ./uvector.h:116:11: note: candidate function
> UBool operator==(const UVector& other);
> ^
> ./uvector.h:116:11: note: candidate function (with reversed parameter order)
* UBool -> bool (source/i18n/tzrule.cpp, source/i18n/unicode/tzrule.h):
[over.match.oper]/9 (of the current C++20 draft) states: "If a rewritten
operator== candidate is selected [...], its return type shall be cv bool":
> basictz.cpp:411:37: error: return type 'UBool' (aka 'signed char') of selected 'operator==' function for rewritten '==' comparison is not 'bool'
> if (*(tzt0.getTo()) == *tar) {
> ~~~~~~~~~~~~~~~ ^ ~~~~
> ./unicode/tzrule.h:675:19: note: declared here
> virtual UBool operator==(const TimeZoneRule& that) const;
> ^
* Additional operator != (source/i18n/unicode/rbtz.h,
source/i18n/unicode/simpletz.h, source/i18n/unicode/smpdtfmt.h,
source/i18n/unicode/stsearch.h, source/i18n/unicode/tzrule.h,
source/i18n/unicode/vtzone.h): Similar to the previous pattern, but here the
original operator used was !=, so an alternative fix (that reqires fewer
changes to the code overall) is to add specific operator != overloads:
> rbtz.cpp:79:15: error: use of overloaded operator '!=' is ambiguous (with operand types 'icu_63::RuleBasedTimeZone' and 'const icu_63::RuleBasedTimeZone')
> if (*this != right) {
> ~~~~~ ^ ~~~~~
> ./unicode/rbtz.h:87:19: note: candidate function
> virtual UBool operator!=(const TimeZone& that) const;
> ^
> ./unicode/rbtz.h:77:19: note: candidate function
> virtual UBool operator==(const TimeZone& that) const;
> ^
> ./unicode/rbtz.h:77:19: note: candidate function (with reversed parameter order)
> rbtz.cpp:101:23: error: use of overloaded operator '!=' is ambiguous (with operand types 'icu_63::InitialTimeZoneRule' and 'icu_63::InitialTimeZoneRule')
> if (*fInitialRule != *(rbtz->fInitialRule)) {
> ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~~
> ./unicode/tzrule.h:257:19: note: candidate function
> virtual UBool operator!=(const TimeZoneRule& that) const;
> ^
> ./unicode/tzrule.h:248:18: note: candidate function
> virtual bool operator==(const TimeZoneRule& that) const;
> ^
> ./unicode/tzrule.h:248:18: note: candidate function (with reversed parameter order)
> rbtz.cpp:535:23: error: use of overloaded operator '!=' is ambiguous (with operand types 'icu_63::InitialTimeZoneRule' and 'icu_63::InitialTimeZoneRule')
> if (*fInitialRule != *(that.fInitialRule)) {
> ~~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~~~~
> ./unicode/tzrule.h:257:19: note: candidate function
> virtual UBool operator!=(const TimeZoneRule& that) const;
> ^
> ./unicode/tzrule.h:248:18: note: candidate function
> virtual bool operator==(const TimeZoneRule& that) const;
> ^
> ./unicode/tzrule.h:248:18: note: candidate function (with reversed parameter order)
>
> olsontz.cpp:630:69: error: return type 'UBool' (aka 'signed char') of selected 'operator==' function for rewritten '!=' comparison is not 'bool'
> || (finalZone != NULL && z->finalZone != NULL && *finalZone != *z->finalZone)) {
> ~~~~~~~~~~ ^ ~~~~~~~~~~~~~
> ./unicode/simpletz.h:112:19: note: declared here
> virtual UBool operator==(const TimeZone& that) const;
> ^
> dtitvfmt.cpp:223:62: error: return type 'UBool' (aka 'signed char') of selected 'operator==' function for rewritten '!=' comparison is not 'bool'
> if (fDateFormat && fmt->fDateFormat && (*fDateFormat != *fmt->fDateFormat)) {return FALSE;}
> ~~~~~~~~~~~~ ^ ~~~~~~~~~~~~~~~~~
> ./unicode/smpdtfmt.h:876:19: note: declared here
> virtual UBool operator==(const Format& other) const;
> ^
> stsearch.cpp:187:17: error: return type 'UBool' (aka 'signed char') of selected 'operator==' function for rewritten '!=' comparison is not 'bool'
> if ((*this) != that) {
> ~~~~~~~ ^ ~~~~
> ./unicode/stsearch.h:299:19: note: declared here
> virtual UBool operator==(const SearchIterator &that) const;
> ^
> vtzone.cpp:1003:15: error: use of overloaded operator '!=' is ambiguous (with operand types 'icu_63::VTimeZone' and 'const icu_63::VTimeZone')
> if (*this != right) {
> ~~~~~ ^ ~~~~~
> ./unicode/vtzone.h:83:19: note: candidate function
> virtual UBool operator!=(const TimeZone& that) const;
> ^
> ./unicode/vtzone.h:73:19: note: candidate function
> virtual UBool operator==(const TimeZone& that) const;
> ^
> ./unicode/vtzone.h:73:19: note: candidate function (with reversed parameter order)
Change-Id: I38e01143d1ea0df3f43de53303fd710e41bae027
Reviewed-on: https://gerrit.libreoffice.org/81306
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...that had been added with fcb2d8a87ad696f7f2fe069f0ed68a88803e1b54
"external/libxml2: Avoid UBSan nullptr-with-offset"
Change-Id: I7ee234c8c6a868ed825a8ed3fa0dcdc69decb7ba
Reviewed-on: https://gerrit.libreoffice.org/81299
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), where adding even an offset of 0 to a null pointer
is UB in C. Seen when building UIConfig_modules/schart:
> [UIL] chart2/uiconfig/ui/3dviewdialog
> xpath.c:14532:5: runtime error: applying zero offset to null pointer
> #0 in xmlXPathTryStreamCompile at workdir/UnpackedTarball/libxml2/xpath.c:14532:5
> #1 in xmlXPathCtxtCompile__internal_alias at workdir/UnpackedTarball/libxml2/xpath.c:14634:12
> #2 in xsltXPathCompileFlags at workdir/UnpackedTarball/libxslt/libxslt/xsltutils.c:2323:11
> #3 in xsltValueOfComp at workdir/UnpackedTarball/libxslt/libxslt/preproc.c:1258:18
> #4 in xsltStylePreCompute at workdir/UnpackedTarball/libxslt/libxslt/preproc.c:2225:6
> #5 in xsltParseTemplateContent at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:4916:13
> #6 in xsltParseStylesheetTemplate at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:5467:5
> #7 in xsltParseStylesheetTop at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:6205:6
> #8 in xsltParseStylesheetProcess at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:6461:2
> #9 in xsltParseStylesheetImportedDoc at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:6675:9
> #10 in xsltParseStylesheetDoc at workdir/UnpackedTarball/libxslt/libxslt/xslt.c:6714:11
> #11 in main at workdir/UnpackedTarball/libxslt/xsltproc/xsltproc.c:888:9
Change-Id: I016ca8d24315385bcfeafca56dda44d9be10f517
Reviewed-on: https://gerrit.libreoffice.org/81285
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...(new with Clang 10 trunk), where adding even an offset of 0 to a null pointer
is UB in C. Seen when building CustomTarget_writerfilter/source:
> [PY ] CustomTarget/writerfilter/source/ooxml/resourceids.hxx
> workdir/UnpackedTarball/expat/lib/xmlparse.c:6488:23: runtime error: applying zero offset to null pointer
> #0 in hashTableIterInit at workdir/UnpackedTarball/expat/lib/xmlparse.c:6488:23
> #1 in dtdDestroy at workdir/UnpackedTarball/expat/lib/xmlparse.c:6130:3
> #2 in XML_ParserFree at workdir/UnpackedTarball/expat/lib/xmlparse.c:1368:5
> #3 in xmlparse_dealloc at workdir/UnpackedTarball/python3/Modules/pyexpat.c:1222:9
> #4 in insertdict at workdir/UnpackedTarball/python3/Objects/dictobject.c:807:9
> #5 in _PyObjectDict_SetItem at workdir/UnpackedTarball/python3/Objects/dictobject.c:3927:19
> #6 in _PyObject_GenericSetAttrWithDict at workdir/UnpackedTarball/python3/Objects/object.c:1159:19
> #7 in PyObject_SetAttr at workdir/UnpackedTarball/python3/Objects/object.c:930:15
> #8 in PyEval_EvalFrameEx at workdir/UnpackedTarball/python3/Python/ceval.c:2310:19
[...]
Change-Id: I152ddb20c726dbeb638c5fab4403423f5c6da7b5
Reviewed-on: https://gerrit.libreoffice.org/81284
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
see commit message of
external/libstaroffice/0001-Fix-equality-operator-arguments.patch.1 for details
Change-Id: Iff882eb1e8b7a71e659a4513772e9049645812fb
Reviewed-on: https://gerrit.libreoffice.org/81256
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
see commit message of
external/firebird/0001-Make-comparison-operator-member-functions-const.patch.1
for details
Change-Id: I559e4b6ef2dbf3800ff5013dcde078d69296d2fb
Reviewed-on: https://gerrit.libreoffice.org/81261
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
see commit message of
external/libwps/0001-Make-comparison-operator-member-functions-const.patch for
details
Change-Id: Ib8702f57f47aacc08628ceaccce23b487660b95c
Reviewed-on: https://gerrit.libreoffice.org/81249
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I81052f7634c7873d893d67deb79ed7bfa6dcbc44
Reviewed-on: https://gerrit.libreoffice.org/80888
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <Thorsten.Behrens@CIB.de>
|
|
I think this is all external libs where it makes sense for them
to have their own PCH and be worth it. Maybe some smaller externals
can also use the common system PCH, but unfortunately many externals
use all kinds of defines that affect system headers, which is
a problem for the common system PCH.
Change-Id: I2c589ac55d93728daf3b158df110722e5f055d45
Reviewed-on: https://gerrit.libreoffice.org/80728
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
This will be needed when building against Flatpak org.freedesktop.Sdk//19.08,
which no longer bundles krb5, so we will have a bundled libgssapi_krb5.so
at /app/lib (instead of under /usr), but which requires LDFLAGS=-L/app/lib to
be found.
Change-Id: I8767740ab0cbb02b6ae682b7f0e21ec90ea5ddd7
Reviewed-on: https://gerrit.libreoffice.org/80620
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Also return the proper kind and creator values set in
WKS4Parser::checkHeader() to callers of
WPSDocument::isFileFormatSupported()
Change-Id: I3adfde0e18669b80956a9b577080fe8388dd3b1f
Reviewed-on: https://gerrit.libreoffice.org/79981
Reviewed-by: Eike Rathke <erack@redhat.com>
Tested-by: Jenkins
|
|
...a namespace enclosing 'std'" (clang-cl). (Upstream <https://github.com/
unicode-org/icu/commit/5a34bfb1516a6719b5f470063c6be2f47446f0b2> "ICU-20209 Fix
build failures on Windows with std::atomic not in enclo…" covers more things, so
just include here what is absolutely necessary for our needs.
Change-Id: I10e61b24a5d73b372bfd719d97fc9678029dc205
Reviewed-on: https://gerrit.libreoffice.org/79953
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
The C++ standard leaves it unspecified how ATOMIC_FLAG_INIT is defined, and at
least MS Visual Studio 2017 version 15.9 defines it as {0}, asking for list-
initialization, but std::atomic_flag is no aggregate (it has a default ctor) and
has no suitable ctor for that initializer list. Other standard library
implementations solve that by e.g. adding a std::atomic_flag ctor taking a bool
parameter, and defining ATOMIC_FLAG_INIT as std::atomic_flag(false); but MSVC
apparently relies on some non-standard behavior here that allows to initialize
std::atomic_flag from {0}. But that is apparently not supported by clang-cl,
causing failures like
> [build CXX] workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp
> In file included from workdir/UnpackedTarball/boost/libs/locale/src/shared/date_time.cpp:11:
> In file included from workdir/UnpackedTarball/boost\boost/thread/locks.hpp:10:
> In file included from workdir/UnpackedTarball/boost\boost/thread/lock_algorithms.hpp:11:
> In file included from workdir/UnpackedTarball/boost\boost/thread/lock_types.hpp:18:
> In file included from workdir/UnpackedTarball/boost\boost/thread/thread_time.hpp:9:
> In file included from workdir/UnpackedTarball/boost\boost/date_time/time_clock.hpp:17:
> In file included from external/boost/include\boost/shared_ptr.hpp:27:
> In file included from workdir/UnpackedTarball/boost\boost/shared_ptr.hpp:17:
> In file included from workdir/UnpackedTarball/boost\boost/smart_ptr/shared_ptr.hpp:36:
> workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_pool.hpp(77,5): error: no matching constructor for initialization of 'std::atomic_flag'
> BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT, BOOST_DETAIL_SPINLOCK_INIT,
> ^~~~~~~~~~~~~~~~~~~~~~~~~~
> workdir/UnpackedTarball/boost\boost/smart_ptr/detail/spinlock_std_atomic.hpp(81,38): note: expanded from macro 'BOOST_DETAIL_SPINLOCK_INIT'
> #define BOOST_DETAIL_SPINLOCK_INIT { ATOMIC_FLAG_INIT }
> ^~~~~~~~~~~~~~~~
> C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(158,26): note: expanded from macro 'ATOMIC_FLAG_INIT'
> #define ATOMIC_FLAG_INIT {0}
> ^~~
> C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(169,2): note: candidate constructor not viable: no known conversion from 'int' to 'const std::atomic_flag' for 1st argument
> atomic_flag(const atomic_flag&) = delete;
> ^
> C:/PROGRA~2/MIB055~1/2017/COMMUN~1/VC/Tools/MSVC/1416~1.270/Include\atomic(168,2): note: candidate constructor not viable: requires 0 arguments, but 1 was provided
> atomic_flag() noexcept = default;
> ^
The internals of external/boost appear to be the only place where we currently
use ATOMIC_FLAG_INIT, and we can work around that easily by picking a different
backend in boost/smart_ptr/detail/spinlock.hpp for the problematic combination
of Clang and _MSC_VER 1916 (which may need to be extended to further MSVC
versions).
Change-Id: Ie6aa62556efbedd3897ad7803b546cb8088ebe10
Reviewed-on: https://gerrit.libreoffice.org/79967
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...so building against glibc-headers-2.30-4.fc31.x86_64 fails with
> src/client/linux/handler/exception_handler.cc:109:12: error: static declaration of 'tgkill' follows non-static declaration
> static int tgkill(pid_t tgid, pid_t tid, int sig) {
> ^
> /usr/include/bits/signal_ext.h:29:12: note: previous declaration is here
> extern int tgkill (__pid_t __tgid, __pid_t __tid, int __signal);
> ^
> 1 error generated.
Upstream commit <https://chromium.googlesource.com/breakpad/breakpad/+/
7e3c165000d44fa153a3270870ed500bc8bbb461%5E%21/> "Fix double declaration of
tgkill when using Android NDK Headers" looks like the perfect fit.
Change-Id: I1b4805886fb7c770cf9733f34a31296e6b859d92
Reviewed-on: https://gerrit.libreoffice.org/79661
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Id8aae84308f6128351ae2f93c8fbc8941a0c7fc6
Reviewed-on: https://gerrit.libreoffice.org/79085
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
Change-Id: I7b3a22584bb2e4d501f509ffcd80929feed23a4c
Reviewed-on: https://gerrit.libreoffice.org/79360
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
...for ASan/UBSan builds using Clang older than current trunk twoards Clang 9,
as announced at
<https://lists.freedesktop.org/archives/libreoffice/2019-May/082654.html> "Re:
[Libreoffice-commits] core.git: The -fvisibility-ms-compat hack is no longer
needed for UBSan on Linux...". (And drop the no longer needed
solenv/sanitizers/asan-suppressions, which people might still reference from
their ASAN_OPTIONS.)
Change-Id: Iedc0c5955366d2cbe7dc847990e2b1576750e85b
Reviewed-on: https://gerrit.libreoffice.org/72493
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Ia98c9718ccd8e18b5f56851027bde944164f05c4
Reviewed-on: https://gerrit.libreoffice.org/78976
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
Change-Id: I9d47d9afed47e01657b42fbfdb06e7fc91a150c8
Reviewed-on: https://gerrit.libreoffice.org/78806
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.com>
|
|
Also transmit $(verbose) to the build so it's debuggable.
Change-Id: I8620fdcae2fcd34807b6b83b7c38aa5ca1ba2caa
Reviewed-on: https://gerrit.libreoffice.org/78596
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
|
|
<http://clang.llvm.org/docs/UndefinedBehaviorSanitizer.html#available-checks>
(as of recent LLVM trunk towards LLVM 10) states:
"-fsanitize=object-size: An attempt to potentially use bytes which the optimizer
can determine are not part of the object being accessed. This will also detect
some types of undefined behavior that may not directly access memory, but are
provably incorrect given the size of the objects involved, such as invalid
downcasts and calling methods on invalid pointers. These checks are made in
terms of __builtin_object_size, and consequently may be able to detect more
problems at higher optimization levels."
A `make check screenshot` with --enabled-optimized runs into two such issues
that were not diagnosed with --disable-optimized, in both cases because a struct
with an "idiomatic trailing dynamic array member" (statically declared to be an
array of size 1) is allocated without any space for that array member, as the
dynamic array size is 0 in the specific case:
* For
> [CUT] sc_ucalc
> cppu/source/uno/copy.hxx:46:19: runtime error: member access within address 0x6020001aaa70 with insufficient space for an object of type 'uno_Sequence' (aka '_sal_Sequence')
> 0x6020001aaa70: note: pointer points here
> 2b 00 80 6a be be be be be be be be 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> ^
> #0 in cppu::allocSeq(int, int) at cppu/source/uno/copy.hxx:46:19 (instdir/program/libuno_cppu.so.3 +0x41f03f)
> #1 in uno_type_sequence_reference2One at cppu/source/uno/sequence.cxx:813:20 (instdir/program/libuno_cppu.so.3 +0x41f03f)
[...]
the call to
pNew = allocSeq( 0, 0 );
in uno_type_sequence_reference2One is inlined, so
sal_uInt32 nSize = calcSeqMemSize( nElementSize, nElements );
in allocSeq is known to be too small.
* For
> testSignatureLineODF::TestBody finished in: 2044ms
> engine-gpg.c:302:6: runtime error: member access within address 0x604001f24f10 with insufficient space for an object of type 'struct arg_and_data_s'
> 0x604001f24f10: note: pointer points here
> 6e 01 00 26 be be be be be be be be be be be be be be be be be be be be be be be be be be be be
> ^
> #0 in add_data at workdir/UnpackedTarball/gpgmepp/src/engine-gpg.c:302:6 (instdir/program/libgpgme.so.11 +0x120c2b)
[...]
> make[1]: *** [solenv/gbuild/CppunitTest.mk:114: workdir/CppunitTest/xmlsecurity_signing.test] Error 1
the
a = malloc (sizeof *a - 1);
is apparently detected to be too small only with optimization enabled.
In both cases, the solution is to operate on the too-small dynamically allocated
object via a reinterpret_cast'ed pointer to some newly introduced "struct
prefix" type.
Change-Id: Ie814db1d00a439bb9189474b91d729e538e81984
Reviewed-on: https://gerrit.libreoffice.org/78548
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
external/liborcus/0001-Blind-fix-attempt-for-older-macOS-builds.patch has been
removed with df2b4a9daa643e66b705a7b39d8988a3d97d731e "Update liborcus to
0.15.2."
Change-Id: I1014e1ff847468b5b6c05ee363c1e6017722fd47
Reviewed-on: https://gerrit.libreoffice.org/78271
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I1a16e7ba9a096862933536268dacf5ab49476896
Reviewed-on: https://gerrit.libreoffice.org/78246
Tested-by: Jenkins
Reviewed-by: Kohei Yoshida <kohei@libreoffice.org>
|
|
Change-Id: Ia84db6c3d8051b872a838b530a8c44ce4a4b2821
Reviewed-on: https://gerrit.libreoffice.org/78198
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: Ib28e86de29cdb5d91e05b341c75b87590e8b3aa6
Reviewed-on: https://gerrit.libreoffice.org/78189
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: Iaf4fd40a7178b50a396971cfcfd0c39211597285
|
|
Change-Id: I5ab185ca783e0e3f637c22909e53a67119349ad7
Reviewed-on: https://gerrit.libreoffice.org/78130
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
cause i is not the lowercase of I
Change-Id: I616d642df54ce19e68d484c43250a79ecae344ee
Reviewed-on: https://gerrit.libreoffice.org/78025
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
One more place that needs a workaround like
5c2c08f635c30b732df48faca7ba3d411074e05a "external/liborcus: Blind fix attempt
for older macOS builds" and ee02218eb9aaa36f37619cb16bb389762e1785b2
"external/liborcus: Blind fix attempt for older macOS builds, take 2".
Change-Id: I330737e1c31744cd28f753f18edf9c911946b37c
Reviewed-on: https://gerrit.libreoffice.org/78022
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
|
|
...after 352924a64750bb99aec54feea3af0121603c12a8 "Update HarfBbuzz to 2.6.0",
where it started to fail for me on Windows with
> config.status: error: in `/cygdrive/c/lo/core/workdir/UnpackedTarball/harfbuzz':
> config.status: error: Something went wrong bootstrapping makefile fragments
> for automatic dependency tracking. Try re-running configure with the
> '--disable-dependency-tracking' option to at least be able to build
> the package (albeit without support for automatic dependency tracking).
> See `config.log' for more details
> make[1]: *** [C:/lo/core/external/harfbuzz/ExternalProject_harfbuzz.mk:24: C:/lo/core/workdir/ExternalProject/harfbuzz/build] Error 1
because it didn't find any `make` (I only have an /opt/lo/bin/make installed).
Change-Id: I378448b2cf1c92596220b0142e4e67a83162d972
Reviewed-on: https://gerrit.libreoffice.org/77987
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|