Age | Commit message (Collapse) | Author |
|
...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 I happened to run into when the breakpad code kicked in due to some
crash happening,
> src/client/linux/minidump_writer/minidump_writer.cc:721:12: 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
> src/client/linux/minidump_writer/minidump_writer.cc:763:14: runtime error: applying non-zero offset to non-null pointer 0x000000200000 produced null pointer
> src/client/linux/minidump_writer/minidump_writer.cc:772:64: runtime error: applying non-zero offset 3200848 to null pointer
(Unlike the changes in the existing external/breakpad/ubsan.patch, which is only
applied when doing sanitizer builds, these changes should be non-controversial
and OK to apply always, so they go into a different patch file.)
Change-Id: Ib1b3f87ba22f96d5fb93b8fcb9951ddc3c353697
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124245
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
(It apparently silently broke with something like
ff673ce838a5538b1432daf9007c047f6455a5ba "update breakpad to the current
chrome_m90 snapshot" and nobody doing ASan/UBSan builds with --enable-breakpad
in the meantime.)
Change-Id: Ic955e1725d2493d849b460a09dfa0238815e2c8d
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/124033
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
Change-Id: I895b034ecda257e1488c46054b13140196790639
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123658
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
<https://sourceware.org/git/?p=glibc.git;a=commit;h=6c57d320484988e87e446e2e60ce42816bf51d53>
"sysconf: Add _SC_MINSIGSTKSZ/_SC_SIGSTKSZ [BZ #20305]" introduced
sysdeps/unix/sysv/linux/bits/sigstksz.h containing
> # define SIGSTKSZ sysconf (_SC_SIGSTKSZ)
so that SIGSTKSZ would have type long, causing
> src/client/linux/handler/exception_handler.cc: In function ‘void google_breakpad::{anonymous}::InstallAlternateStackLocked()’:
> src/client/linux/handler/exception_handler.cc:141:49: error: no matching function for call to ‘max(int, long int)’
> 141 | static const unsigned kSigStackSize = std::max(16384, SIGSTKSZ);
> | ~~~~~~~~^~~~~~~~~~~~~~~~~
when building ExternalProject_breakpad. At least SuS4 appears to be silent
about a required type of SIGSTKSZ defined in signal.h.
Change-Id: I4d87017e10825ef051721f4e9ca751a77bb0d5c8
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123455
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
This allows to define the mapping once, and avoid modification in
multiple places each time a new VS version support is added
Change-Id: I93de4c9d78c3f67a0a2e157007e9d13b6f557937
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/123163
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
This patch changes the configure.ac, so that LibreOffice compiles
with the latest VS 2022 preview.
The option --with-visual-studio=2022 should be added to the
autogen.input, in order to use VS 2022 preview.
Change-Id: Ia1d9bbeabbbd44ffe82af3624151b69d36c0a45c
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/122133
Tested-by: Jenkins
Reviewed-by: Mike Kaganski <mike.kaganski@collabora.com>
|
|
Change-Id: I004b862295686789c0a88dc678bd098d81c76421
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117503
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
while self compiled one still segfaults frequently, it is a tad better
than the included one (and compiling froms source instead of using
precompiled binaries is a net win in any case)
Out of 50 attempts with the mergedlo.dll, the new compiled dump_syms
succeeded 11 times, the shipped one succeeded 7 times - so could still
be regular variance in that small sample size, but at least not
significantly worse either.
Change-Id: I86c213fe6aece58f1391d4c2bf9906b85eee9c57
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/117056
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
- configure with:
- --host=wasm64-local-emscripten
- had to make a few externals optional, so adding:
- --disable-nss
- --disable-cmis
- --disable-curl
Change-Id: I48d1c73d2675ad2e2beaf2c341578199efbd24ee
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111130
Tested-by: Jenkins
Reviewed-by: Thorsten Behrens <thorsten.behrens@allotropia.de>
|
|
We've been using a version from 2015. And it appears that most (all?)
crashreports generated on Windows have unusable backtraces, so maybe
this update helps with that.
Change-Id: Ied4a7943e6023c625bcd9060f18b4b90c00ad29b
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/113750
Tested-by: Jenkins
Reviewed-by: Christian Lohmaier <lohmaier+LibreOffice@googlemail.com>
|
|
See instructions in solenv/gbuild/Trace.mk . This generates a file than
can be viewed e.g. in the Chromium tracing view.
Change-Id: I5f90647c58ca729375525b6daed2d4918adc8188
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/88754
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.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>
|
|
...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>
|
|
As in, really disable, so that they do not even show. This moreover
avoids tons of D9025 warnings from MSVC about overriding -W4 with -w.
Change-Id: Ia2e72fd72d883d91bdd89e467ee42f259e2ae033
Reviewed-on: https://gerrit.libreoffice.org/72899
Tested-by: Jenkins
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
|
|
to old compilers that default to < C++11. (Explicitly passing CXXFLAGS_CXX11
into ExternalProject_breakpad wouldn't work well for now, as it would cause
-Wregister error with -std=c++17 at
workdir/UnpackedTarball/breakpad/src/common/dwarf/dwarf2reader.cc:878:43.)
Change-Id: I1d04e0f05e36e2f9622991fb477f430a062fee0b
|
|
...that hit once in a UBSan build in UITest_calc_tests4:
> soffice.bin: /data/sbergman/lo-san/core/include/com/sun/star/uno/Reference.h:420: interface_type *com::sun::star::uno::Reference<com::sun::star::xml::crypto::XXMLSecurityContext>::operator->() const [interface_type = com::sun::star::xml::crypto::XXMLSecurityContext]: Assertion `_pInterface != NULL' failed.
> warn:desktop:11041:11425:desktop/source/app/sofficemain.cxx:82: minidump generated: /data/sbergman/lo-san/core/workdir/UITest/calc_tests4/user/crash//0585280b-6f1e-fa99-4b711485-60baa6f1.dmp
> src/client/linux/handler/exception_handler.cc:367:34: runtime error: member call on null pointer of type 'std::vector<google_breakpad::ExceptionHandler *, std::allocator<google_breakpad::ExceptionHandler *> >'
> warn:sal.osl.mutex:11041:11041:sal/osl/unx/mutex.cxx:82: pthread_mutex_destroy failed: Device or resource busy
> #0 in google_breakpad::ExceptionHandler::SignalHandler(int, siginfo_t*, void*) at <null> (instdir/program/libsofficeapp.so +0x963904)
> warn:unotools.config:11041:11041:unotools/source/config/configmgr.cxx:169: ConfigManager not empty
> #1 at <null> (/lib64/libpthread.so.0 +0x11fbf)
Change-Id: Icf46adea879c0541a297e5f54f9ce936caa9858b
Reviewed-on: https://gerrit.libreoffice.org/59157
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
SUSv4 merely claims that ucontext_t is defined as a structure type (in
<signal.h>), and at least /usr/include/sys/ucontext.h in
glibc-headers-2.26-15.fc27.x86_64 now defines it as
typedef struct ucontext_t { ... } ucontext_t;
instead of as
typedef struct ucontext { ... } ucontext_t;
as was done in older glibc, so referring to it as "struct ucontext" (C/C++) or
"ucontext" (C++) no longer works.
Change-Id: I3d515a4ce7e5a49d0277136cad2b982bdf799ac5
|
|
In OOo times, there'd originally been efforts to allow building on Windows with
MinGW. Later, in LO times, this has been shifted to an attempt of cross-
compiling for Windows on Linux. That attempt can be considered abandoned, and
the relevant code rotting.
Due to this heritage, there are now three kinds of MinGW-specific code in LO:
* Code from the original OOo native Windows effort that is no longer relevant
for the LO cross-compilation effort, but has never been removed properly.
* Code from the original OOo native Windows effort that is re-purposed for the
LO cross-compilation effort.
* Code that has been added specifially for the LO cross-compilation effort.
All three kinds of code are removed.
(An unrelated, remaining use of MinGW is for --enable-build-unowinreg, utilizing
--with-mingw-cross-compiler, MINGWCXX, and MINGWSTRIP.)
Change-Id: I49daad8669b4cbe49fa923050c4a4a6ff7dda568
Reviewed-on: https://gerrit.libreoffice.org/34127
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
|
|
...as seen in the scenario described in 5997121a51e240c762b4d002d7d16b94ac13d4a1
"Support signal handlers registered with SA_SIGINFO", first
> src/client/linux/minidump_writer/directory_reader.h:82:19: runtime error: member access within misaligned address 0x7f3f8235c2cc for type 'struct kernel_dirent', which requires 8 byte alignment
> 0x7f3f8235c2cc: note: pointer points here
> 10 02 00 00 d8 f8 3b 00 00 00 00 00 01 00 00 00 00 00 00 00 18 00 2e 00 00 00 00 04 02 c7 3b 00
and then
> src/client/linux/minidump_writer/linux_dumper.cc:382:19: runtime error: member access within misaligned address 0x7f96c225d7bc for type 'google_breakpad::MappingInfo', which requires 8 byte alignment
> 0x7f96c225d7bc: note: pointer points here
> 20 0a 32 30 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
> ^
Change-Id: I7f739567879093a404bee3e351ce9e8257676183
|
|
...to avoid UBSan (on Linux) reporting a ODR violation between
google_breakpad::MinidumpDescriptor::kMicrodumpOnConsole (workdir/
UnpackedTarball/breakpad/src/client/linux/handler/minidump_descriptor.cc)
defined in both the crashreport and sofficeapp dynamic libs.
Change-Id: I686a6e2041c70f0aa17a774d705dc71d95d20183
|
|
Change-Id: I888930079fc93c609769ac31a025c410b9adad96
|
|
This does not affect normal LibreOffice and is only important for the
server side.
Change-Id: I270262ed6e1b22c3ef41099fda19fa386f386203
|
|
Change-Id: I4cda93fee47244cf3eb7b13bb6cb2a3eab007cf0
|
|
Change-Id: If5829e321db8af1f09cccafaf34a18343492f514
|
|
Change-Id: Ibcc32344780b7ad5814678cf7dd9a2167ede1661
Reviewed-on: https://gerrit.libreoffice.org/26649
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
Tested-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Change-Id: Icee770ff8e2db019031d618528a9aab83041389d
Reviewed-on: https://gerrit.libreoffice.org/26244
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Change-Id: I1e88b2c9d6ab91a43d03b3f87ba4e83842f2ac03
|
|
ff9b7d118b34b53ec947af881fccd822e2aeb1fd removed the ExternalPackage
instead of the ExternalProject.
Change-Id: I9240526b29d0559e1485253383d39b5858e4039b
|
|
Change-Id: I74b0e5a8e922935c9667491e5f33c514c3315d2a
Reviewed-on: https://gerrit.libreoffice.org/23667
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Change-Id: I8133e03e4ed21ac1efd9982860276d4776850bba
Reviewed-on: https://gerrit.libreoffice.org/22567
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Change-Id: Icfea7b921d990a3d7adcbebbda2cddbc62d8ea39
|
|
It enables building with gcc wrappers on Windows, which is not used here
Change-Id: I8b27ae9f8952fd3fbae37d17fdddfc1d3b9d5fb6
|
|
Change-Id: Ie373992ca9d69fec508778947a983fad56924a60
Reviewed-on: https://gerrit.libreoffice.org/22550
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
We are going to use this tool for uploading the minidumps for now.
Change-Id: I2c59d420e3884aee46411df913c2ec067e0c636b
Reviewed-on: https://gerrit.libreoffice.org/22549
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|
|
Change-Id: I1bfd107502332fc86ae5e96bbc1f475b8d669c6c
Reviewed-on: https://gerrit.libreoffice.org/22547
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Markus Mohrhard <markus.mohrhard@googlemail.com>
|