Bug 422210 - Plasmashell crashes with screen reader on
Summary: Plasmashell crashes with screen reader on
Status: RESOLVED WORKSFORME
Alias: None
Product: plasmashell
Classification: Plasma
Component: generic-crash (show other bugs)
Version: master
Platform: Other Linux
: NOR crash
Target Milestone: 1.0
Assignee: Plasma Bugs List
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-29 08:03 UTC by Kai Uwe Broulik
Modified: 2021-08-23 17:43 UTC (History)
2 users (show)

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments
New crash information added by DrKonqi (4.97 KB, patch)
2021-08-23 17:43 UTC, Stefan Stechemesser
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Kai Uwe Broulik 2020-05-29 08:03:04 UTC
SUMMARY
When screen reader is on, hovering a task bar entry or doing pretty much everything causes Plasma to crash.

STEPS TO REPRODUCE
1. Start Orca from accessibility KCM
2. Restart plasmashell
3. Use plasmashell

OBSERVED RESULT
It crashes all the time

EXPECTED RESULT
It doesn't crash

SOFTWARE/OS VERSIONS
Linux/KDE Plasma: 
(available in About System)
KDE Plasma Version: 5.19.0 git master
KDE Frameworks Version: 5.71.0 git master
Qt Version: 5.14.2

ADDITIONAL INFORMATION
[KCrash Handler]
#4  0x0000000000000000 in  ()
#5  0x00007feef7379317 in QQuickItemLayer::~QQuickItemLayer() (this=0x559244cb1560, __in_chrg=<optimized out>) at items/qquickitem.cpp:8298
#6  0x00007feef7379389 in QQuickItemLayer::~QQuickItemLayer() (this=0x559244cb1560, __in_chrg=<optimized out>) at items/qquickitem.cpp:8300
#7  0x00007feef7525d72 in QAccessibleQuickItem::role() const (this=0x5592438db1b0) at accessible/qaccessiblequickitem.cpp:211
#8  0x00007feee6664301 in AtSpiAdaptor::pathForInterface(QAccessibleInterface*) const (this=this@entry=0x559240467f80, interface=0x5592438db1b0) at atspiadaptor.cpp:1538
#9  0x00007feee6666d14 in AtSpiAdaptor::notifyStateChange(QAccessibleInterface*, QString const&, int) (this=this@entry=0x559240467f80, interface=<optimized out>, state=..., value=1) at atspiadaptor.cpp:873
#10 0x00007feee6668054 in AtSpiAdaptor::notify(QAccessibleEvent*) (this=0x559240467f80, event=<optimized out>) at atspiadaptor.cpp:898
#11 0x00007feef7385f48 in QQuickItemPrivate::setEffectiveVisibleRecur(bool) (this=this@entry=0x559242bd0160, newEffectiveVisible=<optimized out>) at items/qquickitem.cpp:6079
#12 0x00007feef738c492 in QQuickItem::setParentItem(QQuickItem*) (this=this@entry=0x559244cb1560, parentItem=parentItem@entry=0x0) at items/qquickitem.cpp:2789
#13 0x00007feef738e108 in QQuickItem::~QQuickItem() (this=0x559244cb1560, __in_chrg=<optimized out>) at items/qquickitem.cpp:2390
#14 0x00007fee19306d7d in  () at /usr/lib/x86_64-linux-gnu/qt5/qml/QtQuick/Templates.2/libqtquicktemplates2plugin.so
#15 0x00007feef34635a5 in QObject::event(QEvent*) (this=this@entry=0x559244cb1560, e=e@entry=0x559243ff9a80) at kernel/qobject.cpp:1326
#16 0x00007feef738b4db in QQuickItem::event(QEvent*) (this=0x559244cb1560, ev=0x559243ff9a80) at items/qquickitem.cpp:8162
#17 0x00007feef47749ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x55923d76f7a0, receiver=receiver@entry=0x559244cb1560, e=e@entry=0x559243ff9a80) at kernel/qapplication.cpp:3685
#18 0x00007feef477bbb0 in QApplication::notify(QObject*, QEvent*) (this=0x7ffdd2673d60, receiver=0x559244cb1560, e=0x559243ff9a80) at kernel/qapplication.cpp:3431
#19 0x00007feef34304a8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x559244cb1560, event=0x559243ff9a80) at kernel/qcoreapplication.cpp:1075
#20 0x00007feef343067e in QCoreApplication::sendEvent(QObject*, QEvent*) (receiver=receiver@entry=0x559244cb1560, event=event@entry=0x559243ff9a80) at kernel/qcoreapplication.cpp:1470
#21 0x00007feef3433121 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) (receiver=receiver@entry=0x0, event_type=event_type@entry=0, data=0x55923d763fe0) at kernel/qcoreapplication.cpp:1815
#22 0x00007feef34336b8 in QCoreApplication::sendPostedEvents(QObject*, int) (receiver=receiver@entry=0x0, event_type=event_type@entry=0) at kernel/qcoreapplication.cpp:1674
Comment 1 Kai Uwe Broulik 2020-05-29 08:07:29 UTC
Appears to be the media controller applet. :/ It also just crashes when run through plasmawindowed
Comment 2 Kai Uwe Broulik 2020-05-29 08:26:33 UTC
Looks like PlasmaComponents3 ComboBox. When I swap it out for a QQC2 one it works. However, I tried porting ComboBox to ShadowedRectangle and it didn't fix the issue, despite backtrace suggesting something in layers.
Comment 3 Nate Graham 2021-02-23 22:45:41 UTC
The Media Controller applet no longer uses a combobox, so I imagine this is fixed. Can you still reproduce it in other contexts with PC3 comboboxes?
Comment 4 Bug Janitor Service 2021-03-10 04:33:40 UTC
Dear Bug Submitter,

This bug has been in NEEDSINFO status with no change for at least
15 days. Please provide the requested information as soon as
possible and set the bug status as REPORTED. Due to regular bug
tracker maintenance, if the bug is still in NEEDSINFO status with
no change in 30 days the bug will be closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

If you have already provided the requested information, please
mark the bug as REPORTED so that the KDE team knows that the bug is
ready to be confirmed.

Thank you for helping us make KDE software even better for everyone!
Comment 5 Bug Janitor Service 2021-03-25 04:34:06 UTC
This bug has been in NEEDSINFO status with no change for at least
30 days. The bug is now closed as RESOLVED > WORKSFORME
due to lack of needed information.

For more information about our bug triaging procedures please read the
wiki located here:
https://community.kde.org/Guidelines_and_HOWTOs/Bug_triaging

Thank you for helping us make KDE software even better for everyone!
Comment 6 Stefan Stechemesser 2021-08-23 17:43:10 UTC
Created attachment 140985 [details]
New crash information added by DrKonqi

plasmashell (5.18.6) using Qt 5.12.7

- What I was doing when the application crashed:
New installed OpenSuSe 15.3
added new user
enabled Orca Screenreader
-login/logout - fully reproducible

-- Backtrace (Reduced):
#5  0x00007fe23c0bce77 in QQuickItemLayer::~QQuickItemLayer (this=0x55c28b86e2f0, __in_chrg=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.12.7-4.2.1.x86_64/src/quick/items/qquickitem.cpp:8241
#6  0x00007fe23c0bcee9 in QQuickItemLayer::~QQuickItemLayer (this=0x55c28b86e2f0, __in_chrg=<optimized out>) at /usr/src/debug/libqt5-qtdeclarative-5.12.7-4.2.1.x86_64/src/quick/items/qquickitem.cpp:8243
#7  0x00007fe23c25ba82 in QAccessibleQuickItem::role (this=0x55c28b849f20) at /usr/src/debug/libqt5-qtdeclarative-5.12.7-4.2.1.x86_64/src/quick/accessible/qaccessiblequickitem.cpp:211
#8  0x00007fe22aeebb61 in AtSpiAdaptor::pathForInterface (this=this@entry=0x55c288e1df70, interface=0x55c28b849f20) at atspiadaptor.cpp:1538
#9  0x00007fe22aeee584 in AtSpiAdaptor::notifyStateChange (this=this@entry=0x55c288e1df70, interface=<optimized out>, state=..., value=1) at atspiadaptor.cpp:873