Description: Closing a Conditional Formatting dialog window via the "window close" button causes LibreOffice to crash reproducibly. This appears from the lldb trace to be a VCL threading problem. Steps to Reproduce: 1. Open attached ODB file. 2. Activate macros 3. Open the first report in Edit mode. 4. Click on the Team text field, and then menu Format > Conditional Formatting. 5. Close Conditional Formatting window by clicking on the "close window" button. 6. Crash - LibreOffice recovery mode is launched. Actual Results: The app crashes and launches LO in recovery mode. Expected Results: The app should not crash. Reproducible: Always User Profile Reset: No Additional Info: User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.12; rv:49.0) Gecko/20100101 Firefox/49.0
The crash occurred when reproducing bug 104057. The test file is available in that bug report. https://bugs.documentfoundation.org/attachment.cgi?id=128896
Created attachment 128936 [details] backtrace from lldb debugging session
Why a VCL threading problem ? =) I would suggest that this is reproduced on Linux, and we get a valgrind trace - looks like a FMR/W to me. Odd thing is the async event callback should hold a nice VclPtr reference on the frame there which should preserve us from this sort of evil.
Alex: in general on MacOs, I fail to retrieve an interesting bt. I only have assembly thing. I also think "make debugrun" doesn't work on MacOs. Concerning Valgrind, I don't think it works on MacOS 10.12 Since I'm stuck on Linux because of http://nabble.documentfoundation.org/Build-fail-on-Linux-ExternalProject-nss-mk-td4199999.html. I can't help at all. (Hope binutils Debian package will be fixed soon :( )
Created attachment 129406 [details] typescript of valgrind session This typescript is from a local build of LibreOffice commit ae923f94, committed 2016-12-06, configured ... CC=ccache /usr/bin/gcc CXX=ccache /usr/bin/g++ --enable-option-checking=fatal --enable-dbgutil --enable-debug --without-system-postgresql --without-myspell-dicts --with-extra-buildid --without-doxygen --with-external-tar=/home/terry/lo_hacking/git/src --without-package-format built and running on debain-stretch. I departed in that (a) Around line 34978 of the typescript, I twice right-clicked on the team name and then closed the pop-up menu. (b) Around line 35980 of the typescript, I closed the Conditional Formatting dialog. The program did not crash, and I continued to close successively the report design, the main database window and the Start Center. HTH, Terry.
On pc Debian x86-64 with master sources updated today, I don't reproduce this with rendering=gtk3 but I could reproduce this with rendering=gen. I noticed this on console: warn:legacy.osl:4129:1:vcl/source/window/window.cxx:273: Window ( 7VclVBox()) with live children destroyed: N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() Window ( 7VclVBox()) with live children destroyed: N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE() N5rptui9ConditionE()
Patch submitted for review here: https://gerrit.libreoffice.org/#/c/31775/
Julien Nabet committed a patch related to this issue. It has been pushed to "master": http://cgit.freedesktop.org/libreoffice/core/commit/?id=73131fc3806ce2a7da61c93590e467e5b044c341 tdf#104105: fix Vcl lifecycle in CondFormat (reportdesign) 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.
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=987984ea21f1688eddfc124292f5e4b931d7d138&h=libreoffice-5-3 tdf#104105: fix Vcl lifecycle in CondFormat (reportdesign) It will be available in 5.3.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.
The patch for 5.2 branch is on review, see https://gerrit.libreoffice.org/#/c/31780/1
Julien Nabet committed a patch related to this issue. It has been pushed to "libreoffice-5-2": http://cgit.freedesktop.org/libreoffice/core/commit/?id=f7a61c6c462ef188b82ade6c36d0c0bce1fe7f26&h=libreoffice-5-2 tdf#104105: fix Vcl lifecycle in CondFormat (reportdesign) It will be available in 5.2.5. 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.