Created attachment 133380 [details] Simple macro that crashes LibO When trying to change the condition of a conditional format (of whatever type) with macro using the uno api, the program systematically crashes. You can reproduce with the simple macro embedded in the attached file. Tested on Linux and Win7 with LibO 5.2 and 5.3, using either basic or python. A one line error message is displayed on the terminal : (soffice:12264): GLib-GObject-WARNING **: /build/glib2.0-prJhLS/glib2.0-2.48.2/./gobject/gsignal.c:3486: signal name 'selection_changed' is invalid for instance '0x2f1b800' of type 'OOoAtkObjCompTxt' The backtrace log : Thread 1 "soffice.bin" received signal SIGSEGV, Segmentation fault. 0x00007fffc4e1839a in ScCompiler::NextSymbol(bool) () from /opt/libreoffice5.3/program/../program/libsclo.so #0 0x00007fffc4e1839a in ScCompiler::NextSymbol(bool) () from /opt/libreoffice5.3/program/../program/libsclo.so #1 0x00007fffc4e20d48 in ScCompiler::NextNewToken(bool) () from /opt/libreoffice5.3/program/../program/libsclo.so #2 0x00007fffc4e21b4e in ScCompiler::CompileString(rtl::OUString const&) () from /opt/libreoffice5.3/program/../program/libsclo.so #3 0x00007fffc5354550 in ScConditionEntryObj::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&) () from /opt/libreoffice5.3/program/../program/libsclo.so #4 0x00007fffb54b772f in (anonymous namespace)::ImplIntrospectionAccess::setPropertyValue(rtl::OUString const&, com::sun::star::uno::Any const&) () from /opt/libreoffice5.3/program/libintrospectionlo.so #5 0x00007ffff4c0034f in SbUnoObject::Notify(SfxBroadcaster&, SfxHint const&) () from /opt/libreoffice5.3/program/libmergedlo.so #6 0x00007ffff50ad86d in SfxBroadcaster::Broadcast(SfxHint const&) () from /opt/libreoffice5.3/program/libmergedlo.so #7 0x00007ffff4caa7a3 in SbxVariable::Broadcast(unsigned int) () from /opt/libreoffice5.3/program/libmergedlo.so #8 0x00007ffff4ca5fbc in SbxValue::Put(SbxValues const&) () from /opt/libreoffice5.3/program/libmergedlo.so #9 0x00007ffff4ca7225 in SbxValue::operator=(SbxValue const&) () from /opt/libreoffice5.3/program/libmergedlo.so #10 0x00007ffff4ca961f in SbxVariable::operator=(SbxVariable const&) () from /opt/libreoffice5.3/program/libmergedlo.so
Thank you for reporting the bug. it seems you're using an old version of LibreOffice. Could you please try to reproduce it with the latest version of LibreOffice from https://www.libreoffice.org/download/libreoffice-fresh/ ? I have set the bug's status to 'NEEDINFO'. Please change it back to 'UNCONFIRMED' if the bug is still present in the latest version.
Crashes with Version: 5.4.0.0.alpha1+ Build ID: 965494c544dd8f35ae83b7cf38549009da06c367 CPU threads: 4; OS: Windows 6.1; UI render: default; TinderBox: Win-x86@62-TDF, Branch:MASTER, Time: 2017-05-10_23:06:27 Locale: de-DE (de_DE); Calc: group
Created attachment 133382 [details] bt with debug symbols On pc Debian x86-64 with master sources updated yesterday, I could reproduce this.
it started to crash after af56ed1ca1e4d37bdef0875757bdee050c35cfef when the condition was changed. Before that the lang::IllegalArgumentException was thrown. I don't consider this a regression. Bisected with bibisect-50max
I submitted to review this patch on master: https://gerrit.libreoffice.org/#/c/37739/
Julien Nabet committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=63843a97262ccfa38d838a9cbbc3faadba8290a6 tdf#107920: Crash when using ScCompiler in condformat It will be available in 5.4.0. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Branching happened just before the push on master. For 5.4: https://gerrit.libreoffice.org/#/c/37755/ For 5.3: https://gerrit.libreoffice.org/#/c/37756/
Julien Nabet committed a patch related to this issue. It has been pushed to "libreoffice-5-3": http://cgit.freedesktop.org/libreoffice/core/commit/?id=5756d3d5bd2175335ac302aaa806fd5f2277f564&h=libreoffice-5-3 tdf#107920: Crash when using ScCompiler in condformat It will be available in 5.3.4. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.
Julien Nabet committed a patch related to this issue. It has been pushed to "libreoffice-5-4": http://cgit.freedesktop.org/libreoffice/core/commit/?id=202c5747d23df7fae477f097648135b0bd675c07&h=libreoffice-5-4 tdf#107920: Crash when using ScCompiler in condformat It will be available in 5.4.0.1. The patch should be included in the daily builds available at http://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More information about daily builds can be found at: http://wiki.documentfoundation.org/Testing_Daily_Builds Affected users are encouraged to test the fix and report feedback.