Bug 122056 - kde5: Impress crashes when at presentation end when Orca is enabled
Summary: kde5: Impress crashes when at presentation end when Orca is enabled
Status: RESOLVED FIXED
Alias: None
Product: LibreOffice
Classification: Unclassified
Component: UI (show other bugs)
Version:
(earliest affected)
6.3.0.0.alpha0+
Hardware: All All
: medium normal
Assignee: Katarina Behrens
URL:
Whiteboard: target:6.3.0 target:6.2.1 target:6.2.5
Keywords:
Depends on:
Blocks: KDE
  Show dependency treegraph
 
Reported: 2018-12-12 18:36 UTC by Michael Weghorn
Modified: 2020-11-20 09:31 UTC (History)
4 users (show)

See Also:
Crash report or crash signature:


Attachments
GDB backtrace (6.95 KB, text/plain)
2018-12-19 16:59 UTC, Michael Weghorn
Details
GDB backtrace with master build of 2019-01-11 (15.49 KB, text/x-log)
2019-01-11 12:10 UTC, Michael Weghorn
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Michael Weghorn 2018-12-12 18:36:05 UTC
Version: 6.3.0.0.alpha0+
Build ID: 12edea426a31f57a9d5b1c65b34fb1336c5534e9
CPU threads: 1; OS: Linux 4.18; UI render: default; VCL: kde5; 
Locale: en-GB (en_GB.UTF-8); UI-Language: en-US
Calc: threaded

This is not reproducible when using e.g. the gtk3 VCL plugin.

Steps to reproduce:

0) enable the Orca screen reader
1) open an existing presentation in LibreOffice ImpressImpress
2) switch to presentation mode (e.g. by pressing F5)
3) left-click until you get to the end of the presentation, click again to finish

Result: LibreOffice terminates. When started from command line, this output is shown:

> $ libreofficedev6.3 Documents/sample.odp 
> QSpiApplication::keyEventError  "org.freedesktop.DBus.Error.NoReply" "Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken."
> LibreOfficeDev 6.3 - Fatal Error: object has been already disposed


Note: This happened while testing on Debian unstable, with Orca at version 3.30.1-1.
Comment 1 Katarina Behrens (Inactive) 2018-12-18 17:40:58 UTC
Yep
Comment 2 Michael Weghorn 2018-12-19 16:59:34 UTC
Created attachment 147674 [details]
GDB backtrace

Backtrace of the crash (Errors related to "CU" in there due to LO build having been copied from other host, but crash happens with "proper" build as well).
Comment 3 Katarina Behrens (Inactive) 2018-12-19 18:09:46 UTC
Note to self: can't repro w/ dual screen
Comment 4 Commit Notification 2019-01-10 12:43:12 UTC
Katarina Behrens committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/+/d804d22c229a9a08bd50c348a0e933b0138385bf%5E%21

tdf#122056: catch DisposedException to avoid crash w/ screen reader

It will be available in 6.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 5 Katarina Behrens (Inactive) 2019-01-10 12:46:58 UTC
I no longer get crash with the scenario from initial comment, however this bad pattern of not catching exceptions when objs are disposed repeats in the code so there is a potential for more crashes. 
It somehow seems to depend on timing which (and if any) of those points is hit
Comment 6 Michael Weghorn 2019-01-11 12:10:51 UTC
Created attachment 148235 [details]
GDB backtrace with master build of 2019-01-11

Unfortunately still crashes for me with

Version: 6.3.0.0.alpha0+
Build ID: 98d71c4e0847797a4ba9229a8e6d832a8a3d5e0f
CPU threads: 2; OS: Linux 4.19; UI render: default; VCL: kde5; 
Locale: en-GB (en_GB.UTF-8); UI-Language: en-US
Calc: threaded

New backtrace attached
Comment 7 Michael Weghorn 2019-01-11 12:30:39 UTC
It actually turns out the crash does not always happen, but it does most of the time for me.

Output when started via command line:

> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> warn:vcl.qt5:8863:8863:vcl/qt5/Qt5AccessibleEventListener.cxx:168: Unmapped AccessibleEventId: 8
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f37253a240 invalid) "/org/a11y/atspi/accessible/2147486685"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f3723b5d80 invalid) "/org/a11y/atspi/accessible/2147487099"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f3723b5d80 invalid) "/org/a11y/atspi/accessible/2147487099"
> qt.accessibility.atspi: WARNING Qt AtSpiAdaptor: Accessible invalid:  QAccessibleInterface(0x55f3723b5d80 invalid) "/org/a11y/atspi/accessible/2147487099"
> LibreOfficeDev 6.3 - Fatal Error: object has been already disposed
Comment 8 Commit Notification 2019-01-23 12:09:59 UTC
Katarina Behrens committed a patch related to this issue.
It has been pushed to "libreoffice-6-2":

https://git.libreoffice.org/core/+/32e1e206694b5dbbf47e2c2310117314714305fc%5E%21

tdf#122056: catch DisposedException to avoid crash w/ screen reader

It will be available in 6.2.1.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 9 Xisco Faulí 2019-03-13 18:42:17 UTC
A polite ping to Bubli / Michael Weghorn:
Is this bug fixed? if so, could you please close it as RESOLVED FIXED ? Otherwise, Could you please explain what's missing?
Thanks
Comment 10 Michael Weghorn 2019-03-13 19:04:46 UTC
(In reply to Xisco Faulí from comment #9)
> A polite ping to Bubli / Michael Weghorn:
> Is this bug fixed? if so, could you please close it as RESOLVED FIXED ?
> Otherwise, Could you please explain what's missing?
> Thanks

Last time I tried, it was still crashing, s. comment 6 and comment 7, so the fix from comment 4 (backport to 6.2 in comment 8) was not enough.
Comment 11 Commit Notification 2019-03-30 08:21:14 UTC
Katarina Behrens committed a patch related to this issue.
It has been pushed to "master":

https://git.libreoffice.org/core/+/9e37ab4e650481f8bf03d1469815299b8ef1fb5f%5E%21

tdf#122056: Catch DisposedExceptions everywhere

It will be available in 6.3.0.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 12 Xisco Faulí 2019-05-02 09:51:31 UTC
A polite ping to Katarina Behrens:
Is this bug fixed? if so, could you please close it as RESOLVED FIXED ? Otherwise, Could you please explain what's missing?
Thanks
Comment 13 Katarina Behrens (Inactive) 2019-05-02 18:41:55 UTC
> Is this bug fixed? if so, could you please close it as RESOLVED FIXED ?
> Otherwise, Could you please explain what's missing?
> Thanks

Does it help to speed up fixing the bug if I explain what's missing? 

Nay, this bug is not fixed. It needs more exception catching
Comment 14 Commit Notification 2019-05-22 06:13:16 UTC
Katarina Behrens committed a patch related to this issue.
It has been pushed to "libreoffice-6-2":

https://git.libreoffice.org/core/+/74df5affeba4c5deb443e7974b1693a7c12561bc%5E%21

tdf#122056: Catch DisposedExceptions everywhere

It will be available in 6.2.5.

The patch should be included in the daily builds available at
https://dev-builds.libreoffice.org/daily/ in the next 24-48 hours. More
information about daily builds can be found at:
https://wiki.documentfoundation.org/Testing_Daily_Builds

Affected users are encouraged to test the fix and report feedback.
Comment 15 Katarina Behrens (Inactive) 2019-05-31 12:41:58 UTC
I no longer reproduce so tempted to close this as fixed
Comment 16 Michael Weghorn 2019-05-31 12:54:03 UTC
(In reply to Katarina Behrens (CIB) from comment #15)
> I no longer reproduce so tempted to close this as fixed

Let's do so, I was unable to reproduce yesterday with current master as well.
(I'll still try once again next week with the VM I used last time; if there's still anything, I'll report a new bug.)
Comment 17 Michael Weghorn 2019-06-03 17:01:40 UTC
(In reply to Michael Weghorn from comment #16)
> (I'll still try once again next week with the VM I used last time; if
> there's still anything, I'll report a new bug.)

No longer reproducible with this VM, either.