Does the obvious thing. Useful to get debug output from Python code at
development time into the same format and in the same output file as
from SAL_DEBUG() calls in C++ source code. Especially useful when
combined with SAL_LOG=+TIMESTAMP or +RELATIVETIMER.
Change-Id: I8c3d4fdf83b06846acb56773438401d467e71062
Reviewed-on: https://gerrit.libreoffice.org/56171
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
Tested-by: Noel Grandin <noel.grandin@collabora.co.uk>
When having entries in 'Section' part of the Explorer in
Writer and there are invisible/hidden ones, the check for
changes in visibility has to be done after the whole
list is created since these Lists are sorted-lists. This
was changed and worked before by directly comparing single
list entries index-based with the old ones.
Change-Id: I8e647cc9161d0555f84a028afbc6f37c716e8c9f
Reviewed-on: https://gerrit.libreoffice.org/56296
Tested-by: Jenkins
Reviewed-by: Armin Le Grand <Armin.Le.Grand@cib.de>
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: I7eeb4529d521e4ff6616507c7f68cbff155ea729
Reviewed-on: https://gerrit.libreoffice.org/55838
Tested-by: Jenkins
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
Commit f0821f9a34 (Cache text layout of
statusbar items, 2017-06-08) was a performance improvement of not laying
out the text of status bar text during each & every paint. One of these
places didn't work correctly with Chinese text, so commit
a4ed3d9a1f (tdf#115353 Status bar: no
cache in settext, 2018-03-01) attempted to disable the caching at that
particular place by removing the update of the cache.
This resulted in lack of updates, e.g. during typing into Writer and
checking the word count part of the status bar.
Fix this (and at the same time keep the original problem fixed) by still
not using the layout cache and that problematic place, but instead of
just not updating the cache actually invalidate it -- probably that was
the intention in the force place already.
Change-Id: Ib7b91e5f24bc68d2f8cae2efea64340585ad9bd5
Reviewed-on: https://gerrit.libreoffice.org/56304
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Tested-by: Jenkins
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: Ie93b7695e4c67fc55089b21a5df37a3468ad4bee
Reviewed-on: https://gerrit.libreoffice.org/55565
Tested-by: Jenkins
Reviewed-by: Jochen Nitschke <j.nitschke+logerrit@ok.de>
which is often a useful indicator that the callers can be made to use
std::unique_ptr
Change-Id: Idb1745d1f58dbcf389c9f60f1a5728d7d092ade5
Reviewed-on: https://gerrit.libreoffice.org/56238
Tested-by: Jenkins
Reviewed-by: Noel Grandin <noel.grandin@collabora.co.uk>
depending on if launched from a listbox within a dialog, or from
a (potentially) ephemeral toolbar
Change-Id: I5d3b5cc6dd501490b99b46250e2729fb8bc2a2e2
Reviewed-on: https://gerrit.libreoffice.org/56297
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
The fallout of this resulted in a lot of headers added back to
chart2/inc/ChartView.hxx
Change-Id: Ie0e3b156b8b9fa0ea7745ee8cf9d7dd0e942bf91
Reviewed-on: https://gerrit.libreoffice.org/55826
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
Since the code uses ScExternalRefManager, which caches values, so
better just disable it. Can be seen e.g. with fdo#78490-1 (and
mnOpenCLMinimumFormulaGroupSize disabled). The doc actually asserts
in GetFormatTable() called from ScExternalRefManager, but there
seems to be no point in fixing just the assert if the whole class
is possibly problematic.
Change-Id: I4ace488414fd15b4ad0b88da51205b02c561c7a6
Reviewed-on: https://gerrit.libreoffice.org/56289
Reviewed-by: Michael Meeks <michael.meeks@collabora.com>
Tested-by: Luboš Luňák <l.lunak@collabora.com>
The solver code is apparently quite unreliable, failures such as:
File "/sc/qa/uitest/goalSeek/tdf37341.py", line 43, in test_tdf37341_goalSeek
self.assertEqual(get_cell_by_position(document, 0, 4, 6).getValue(), 12879.147)
AssertionError: 11751.688982 != 12879.147
or crash on shutdown:
0 in std::unique_ptr<SfxAppData_Impl, std::default_delete<SfxAppData_Impl> >::get() const (this=0x28) at /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/unique_ptr.h:234
1 in std::unique_ptr<SfxAppData_Impl, std::default_delete<SfxAppData_Impl> >::operator->() const (this=0x28) at /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/unique_ptr.h:228
2 in SfxApplication::GetObjectShells_Impl() const (this=0x0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sfx2/source/appl/app.cxx:403
3 in SfxObjectShell::GetFirst(std::function<bool (SfxObjectShell const*)> const&, bool) (isObjectShell=..., bOnlyVisible=true) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sfx2/source/doc/objxtor.cxx:450
41bef610: {maData = std::__debug::vector of length -417946822263704711, capacity -485587501518907230 = {<error reading variable>
4 in ScFormulaReferenceHelper::enableInput(bool) (bEnable=true) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/anyrefdg.cxx:94
5 in ScFormulaReferenceHelper::dispose() (this=0x32076e0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/anyrefdg.cxx:78
2076c0
6 in ScRefHandler::disposeRefHandler() (this=0x32076c0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/anyrefdg.cxx:823
7 in ScRefHandler::~ScRefHandler() (this=0x32076c0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/anyrefdg.cxx:815
8 in ScRefHdlrImplBase<SfxModelessDialog, true>::~ScRefHdlrImplBase() (this=0x3207390, vtt=0x2b8443074d78 <VTT for ScSolverDlg+24>) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/inc/anyrefdg.hxx:198
9 in ScRefHdlrImpl<ScAnyRefDlg, SfxModelessDialog, true>::~ScRefHdlrImpl() (this=0x3207390, vtt=0x2b8443074d70 <VTT for ScSolverDlg+16>) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/inc/anyrefdg.hxx:229
10 in ScAnyRefDlg::~ScAnyRefDlg() (this=0x3207390, vtt=0x2b8443074d68 <VTT for ScSolverDlg+8>) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/inc/anyrefdg.hxx:232
11 in ScSolverDlg::~ScSolverDlg() (this=0x3207390, vtt=0x2b8443074d60 <VTT for ScSolverDlg>) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/solvrdlg.cxx:80
12 in ScSolverDlg::~ScSolverDlg() (this=0x3207390) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/solvrdlg.cxx:78
13 in ScSolverDlg::~ScSolverDlg() (this=0x3207390) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/sc/source/ui/miscdlgs/solvrdlg.cxx:78
14 in VclReferenceBase::release() const (this=0x3207928) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/include/vcl/vclreferencebase.hxx:45
15 in rtl::Reference<vcl::Window>::~Reference() (this=0x2fb0bb0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/include/rtl/ref.hxx:90
16 in VclPtr<vcl::Window>::~VclPtr() (this=0x2fb0ba8) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/include/vcl/vclptr.hxx:117
17 in WindowUIObject::~WindowUIObject() (this=0x2fb0ba0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/include/vcl/uitest/uiobject.hxx:102
18 in DialogUIObject::~DialogUIObject() (this=0x2fb0ba0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/vcl/source/uitest/uiobject.cxx:592
19 in DialogUIObject::~DialogUIObject() (this=0x2fb0ba0) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/vcl/source/uitest/uiobject.cxx:591
20 in std::default_delete<UIObject>::operator()(UIObject*) const (this=0x32543d8, __ptr=0x2fb0ba0) at /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/unique_ptr.h:67
21 in std::unique_ptr<UIObject, std::default_delete<UIObject> >::reset(UIObject*) (this=0x32543d8, __p=0x2fb0ba0) at /usr/lib/gcc/x86_64-redhat-linux/4.8.5/../../../../include/c++/4.8.5/bits/unique_ptr.h:262
22 in UIObjectUnoObj::~UIObjectUnoObj() (this=0x3254370) at /home/tdf/lode/jenkins/workspace/lo_gerrit/Config/linux_clang_dbgutil_64/vcl/source/uitest
Change-Id: I350ad562bbea945711de6e69e82f59ed728ab605
fdo#35927-1 (with minimal formula size disabled) crashes
in LinkManager::CloseCachedComps(). The whole LinkManager class feels
thread-unsafe, so just blacklist.
Change-Id: Idd7ec6b47f5269c977b600dadfc3a05a5287a86d
Reviewed-on: https://gerrit.libreoffice.org/56241
Reviewed-by: Luboš Luňák <l.lunak@collabora.com>
Tested-by: Luboš Luňák <l.lunak@collabora.com>
As seen on Linux-rpm_deb-x86@71-TDF:
poppler/Annot.cc:2491:1: internal compiler error: in connect_traces, at dwarf2cfi.c:2676
The bug report claims that -march=i586 works around the bug.
Change-Id: I1d97d2df9049e058d49987424cc8e4818a9fa9c6
swxform use the same actions than swriter
to a better maintanance swxform can use swriter
eg. the old menubar didn't had form items available
Change-Id: I6797ba26e3468a116795fdeb8f2acc0e51a48516
Reviewed-on: https://gerrit.libreoffice.org/56066
Tested-by: Jenkins
Reviewed-by: Heiko Tietze <tietze.heiko@gmail.com>
This test fails, as adding 1 to 6426.95 rather obviously doesn't make
it 6427.89 . I have no idea how this could have passed the gerrit
tests, but there's something fishy about this.
Also, there's no point testing this as a slow UITest when this can
be made as a C++ unittest.
This reverts commit 6ed8083ab4.
Found with bin/find-unneeded-includes
Only removal proposals are dealt with here.
Change-Id: I62758fd7c9d932c5a390739774b112356006a937
Reviewed-on: https://gerrit.libreoffice.org/56062
Tested-by: Jenkins
Reviewed-by: Miklos Vajna <vmiklos@collabora.co.uk>
...as seen with UBSan during newly introduced UITest_goalSeek (where eOldActive
is 0 and all four members of pGridWin except for pGridWin[2] are null):
> sc/source/ui/view/tabview3.cxx:1814:45: runtime error: member call on null pointer of type 'vcl::Window'
> #0 in ScTabView::SetTabNo(short, bool, bool, bool) at sc/source/ui/view/tabview3.cxx:1814:45 (instdir/program/../program/libsclo.so +0xb25dfca)
> #1 in ScTabViewShell::DoReadUserDataSequence(com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&) at sc/source/ui/view/tabvwsh4.cxx:500:5 (instdir/program/../program/libsclo.so +0xb2d27a5)
> #2 in ScTabViewShell::ReadUserDataSequence(com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&) at sc/source/ui/view/tabvwsh4.cxx:491:9 (instdir/program/../program/libsclo.so +0xb2d245a)
> #3 in SfxBaseController::ConnectSfxFrame_Impl(SfxBaseController::ConnectSfxFrame) at sfx2/source/view/sfxbasecontroller.cxx:1368:52 (instdir/program/libsfxlo.so +0x320c974)
> #4 in SfxBaseController::attachFrame(com::sun:⭐:uno::Reference<com::sun:⭐:frame::XFrame> const&) at sfx2/source/view/sfxbasecontroller.cxx:550:13 (instdir/program/libsfxlo.so +0x32055f1)
> #5 in (anonymous namespace)::SfxFrameLoader_Impl::impl_createDocumentView(com::sun:⭐:uno::Reference<com::sun:⭐:frame::XModel2> const&, com::sun:⭐:uno::Reference<com::sun:⭐:frame::XFrame> const&, comphelper::NamedValueCollection const&, rtl::OUString const&) at sfx2/source/view/frmload.cxx:593:18 (instdir/program/libsfxlo.so +0x319fcdd)
> #6 in (anonymous namespace)::SfxFrameLoader_Impl::load(com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&, com::sun:⭐:uno::Reference<com::sun:⭐:frame::XFrame> const&) at sfx2/source/view/frmload.cxx:710:13 (instdir/program/libsfxlo.so +0x319b263)
> #7 in framework::LoadEnv::impl_loadContent() at framework/source/loadenv/loadenv.cxx:1148:37 (instdir/program/../program/libfwklo.so +0xfa4cc8)
> #8 in framework::LoadEnv::startLoading() at framework/source/loadenv/loadenv.cxx:382:20 (instdir/program/../program/libfwklo.so +0xf9a76a)
> #9 in framework::LoadEnv::loadComponentFromURL(com::sun:⭐:uno::Reference<com::sun:⭐:frame::XComponentLoader> const&, com::sun:⭐:uno::Reference<com::sun:⭐:uno::XComponentContext> const&, rtl::OUString const&, rtl::OUString const&, int, com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&) at framework/source/loadenv/loadenv.cxx:168:14 (instdir/program/../program/libfwklo.so +0xf97d15)
> #10 in framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&) at framework/source/services/desktop.cxx:618:12 (instdir/program/../program/libfwklo.so +0x108e918)
> #11 in non-virtual thunk to framework::Desktop::loadComponentFromURL(rtl::OUString const&, rtl::OUString const&, int, com::sun:⭐:uno::Sequence<com::sun:⭐🫘:PropertyValue> const&) at framework/source/services/desktop.cxx (instdir/program/../program/libfwklo.so +0x108e9ca)
> #12 in gcc3::callVirtualMethod(void*, unsigned int, void*, _typelib_TypeDescriptionReference*, bool, unsigned long*, unsigned int, unsigned long*, double*) at bridges/source/cpp_uno/gcc3_linux_x86-64/callvirtualmethod.cxx:77:5 (instdir/program/libgcc3_uno.so +0xba96d)
> #13 in cpp_call(bridges::cpp_uno::shared::UnoInterfaceProxy*, bridges::cpp_uno::shared::VtableSlot, _typelib_TypeDescriptionReference*, int, _typelib_MethodParameter*, void*, void**, _uno_Any**) at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:233:13 (instdir/program/libgcc3_uno.so +0xb6855)
> #14 in unoInterfaceProxyDispatch at bridges/source/cpp_uno/gcc3_linux_x86-64/uno2cpp.cxx:420:13 (instdir/program/libgcc3_uno.so +0xb4663)
> #15 in binaryurp::IncomingRequest::execute_throw(binaryurp::BinaryAny*, std::__debug::vector<binaryurp::BinaryAny, std::allocator<binaryurp::BinaryAny> >*) const at binaryurp/source/incomingrequest.cxx:236:13 (instdir/program/libbinaryurplo.so +0x209ede)
> #16 in binaryurp::IncomingRequest::execute() const at binaryurp/source/incomingrequest.cxx:79:26 (instdir/program/libbinaryurplo.so +0x205f10)
> #17 in request at binaryurp/source/reader.cxx:85:9 (instdir/program/libbinaryurplo.so +0x2966d3)
> #18 in cppu_threadpool::JobQueue::enter(long, bool) at cppu/source/threadpool/jobqueue.cxx:107:17 (instdir/program/libuno_cppu.so.3 +0x17e863)
> #19 in cppu_threadpool::ORequestThread::run() at cppu/source/threadpool/thread.cxx:165:31 (instdir/program/libuno_cppu.so.3 +0x1977bb)
> #20 in threadFunc at include/osl/thread.hxx:185:15 (instdir/program/libuno_cppu.so.3 +0x1a0347)
> #21 in osl_thread_start_Impl(void*) at sal/osl/unx/thread.cxx:234:9 (instdir/program/libuno_sal.so.3 +0x2e6789)
> #22 in start_thread at /usr/src/debug/glibc-2.27-56-g50df56ca86/nptl/pthread_create.c:463:7 (/lib64/libpthread.so.0 +0x7593)
> #23 in __GI___clone at /usr/src/debug/glibc-2.27-56-g50df56ca86/misc/../sysdeps/unix/sysv/linux/x86_64/clone.S:95 (/lib64/libc.so.6 +0xfa00e)
Change-Id: I23fb29cdec429a1bbdba3c04f3c3c66ad744621e
Reviewed-on: https://gerrit.libreoffice.org/56224
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>
The exception in the case of a running slideshow has been around
since the function was introduced, but more and more code
has been building up in front of that if clause. Since no
changes will be made, include that exception in the initial
exit clause to avoid unnecessary computations.
This cleanup is prep work for a bug fix.
Change-Id: Ief0b07d8108e1576459486ef61f038443f64705f
Reviewed-on: https://gerrit.libreoffice.org/54678
Tested-by: Jenkins
Reviewed-by: Justin Luth <justin_luth@sil.org>
Regression of 2bfc4cefc2
("Correctly mirror autofilter in rtl ui, tdf#117175 related")
If a window has a parent, it doesn't necessarily mean it's
not a top level.
Change-Id: I75a27d19284be6c29de7705af20ddccfcf69491d
Reviewed-on: https://gerrit.libreoffice.org/56250
Reviewed-by: Maxim Monastirsky <momonasmon@gmail.com>
Tested-by: Maxim Monastirsky <momonasmon@gmail.com>
Once an in-process JVM is instantiated, it is vital that the disposition for
SIGSEGV is not changed afterwards, as we do not make use of Java's libjsig.so
(cf. <https://docs.oracle.com/javase/8/docs/technotes/guides/vm/
signal-chaining.html>) in our processes.
I observed sporadic SIGSEGV crashes of CppunitTest_dbaccess_RowSetClones on a
64-core aarch64 machine (see comment at <https://github.com/flathub/
org.libreoffice.LibreOffice/issues/42#issuecomment-395731088> "OpenJDK 10 is now
available"). What apparently happenes is that the cppunittester process first
sets up its signal handlers through vclbootstrapprotector, which doesn't set one
for SIGSEGV because bSetSEGVHandler is false in sal/osl/unx/signal.cxx because
!is_soffice_Impl(). Then later when the in-process JVM is instantiated it sets
its handlers, including a SIGSEGV one. Towards the end of the process,
DeInitVCL calls osl_removeSignalHandler calls onDeInitSignal, which erroneously
resets the SIGSEGV handler because it doesn't honor bSetSEGVHandler. But it
can apparently happen that JVM threads are still running at that time and are
executing JIT'ed code that can cause SIGSEGV that relies on the JVM's handler
being installed, which it no longer is.
(This can probably also happen for soffice.bin itself, where bSetSEGVHandler
will be true. That will need a different, follow-up fix.)
Change-Id: Ib6d99c23e57daa0b7576964908aadff511f2bb21
Reviewed-on: https://gerrit.libreoffice.org/56232
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
On ppc64le with Ubuntu 18.04 and latest LibreOffice from master, the
build fails with the error below.
```
$ uname -m
ppc64le
$ git describe --dirty
libreoffice-6-1-branch-point-897-gd776263a9968
$ git log --oneline -1
d776263a99 (HEAD -> master, origin/master, origin/HEAD) uitest Calc-Statistics- Descriptive statistics
$ ./configure
[…]
$ make
[…]
checking build system type... ./config.guess: unable to guess system type
This script, last modified 2011-05-11, has failed to recognize
the operating system you are using. It is advised that you
download the most up to date version of the config scripts from
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.guess;hb=HEAD
and
http://git.savannah.gnu.org/gitweb/?p=config.git;a=blob_plain;f=config.sub;hb=HEAD
If the version you run (./config.guess) is already up to date, please
send the following data and any information you think might be
pertinent to <config-patches@gnu.org> in order to provide the needed
information to handle your system.
config.guess timestamp = 2011-05-11
uname -m = ppc64le
uname -r = 4.17.0-rc6+
uname -s = Linux
uname -v = #1 SMP Sun May 27 18:16:57 CEST 2018
/usr/bin/uname -p =
/bin/uname -X =
hostinfo =
/bin/universe =
/usr/bin/arch -k =
/bin/arch =
/usr/bin/oslevel =
/usr/convex/getsysinfo =
UNAME_MACHINE = ppc64le
UNAME_RELEASE = 4.17.0-rc6+
UNAME_SYSTEM = Linux
UNAME_VERSION = #1 SMP Sun May 27 18:16:57 CEST 2018
configure: error: cannot guess build type; you must specify one
/dev/shm/libreoffice-core/external/libatomic_ops/ExternalProject_libatomic_ops.mk:19: recipe for target '/dev/shm/libreoffice-core/workdir/ExternalProject/libatomic_ops/build' failed
make[1]: *** [/dev/shm/libreoffice-core/workdir/ExternalProject/libatomic_ops/build] Error 1
make[1]: *** Waiting for unfinished jobs....
[…]
```
So, replace the library's config.sub and config.guess by the internal,
more up-to-date copies.
Change-Id: Ib92489943517a4204528f1039f6fba26363b33ee
Solution-by: David Tardon <dtardon@redhat.com>
Signed-off-by: Paul Menzel <pmenzel@molgen.mpg.de>
Reviewed-on: https://gerrit.libreoffice.org/56054
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Tested-by: Stephan Bergmann <sbergman@redhat.com>