Skip to content

applets/devicenotifier: don't crash if device is removed elsewhere

Fushan Wen requested to merge work/fuf/PLASMA-WORKSPACE-1096 into master

Reason for the change

Backtrace:

libKF6Solid.so.6.6.0
+0x034d04
Solid::DeviceInterface::isValid
libdevicenotifierplugin
+0x03a6ce
DeviceErrorMonitor::isSafelyRemovable (deviceerrormonitor_p.cpp:117)
libdevicenotifierplugin
+0x02c978
DeviceErrorMonitor::onSolidReply (deviceerrormonitor_p.cpp:178)
libQt6Core.so.6.8.0
+0x1b2168
QtPrivate::QSlotObjectBase::call (qobjectdefs_impl.h:487)
libQt6Core.so.6.8.0
+0x1b2168
doActivate<T> (qobject.cpp:4120)
libKF6Solid.so.6.6.0
+0x032640
Solid::StorageAccess::teardownDone
libKF6Solid.so.6.6.0
+0x03a32b
<unknown>
libQt6Core.so.6.8.0
+0x1b23b9
doActivate<T> (qobject.cpp:4132)
libKF6Solid.so.6.6.0
+0x08a35c
<unknown>
libKF6Solid.so.6.6.0
+0x08b4d3
<unknown>
libQt6DBus.so.6.8.0
+0x03da11
QDBusConnectionPrivate::deliverCall (qdbusintegrator.cpp:1008)
libQt6Core.so.6.8.0
+0x1a33d9
QObject::event (qobject.cpp:1419)
libQt6Widgets.so.6.8.0
+0x0fd559
QApplicationPrivate::notify_helper (qapplication.cpp:3294)
libQt6Core.so.6.8.0
+0x1587e7
QCoreApplication::notifyInternal2 (qcoreapplication.cpp:1172)
libQt6Core.so.6.8.0
+0x159274
QCoreApplication::sendEvent (qcoreapplication.cpp:1616)
libQt6Core.so.6.8.0
+0x159274
QCoreApplicationPrivate::sendPostedEvents (qcoreapplication.cpp:1972)
libQt6Core.so.6.8.0
+0x3bcbfb
QCoreApplication::sendPostedEvents (qcoreapplication.cpp:1804)
libQt6Core.so.6.8.0
+0x3bcbfb
postEventSourceDispatch (qeventdispatcher_glib.cpp:246)
libglib-2.0.so.0.8000.5
+0x062877
<unknown>
libglib-2.0.so.0.8000.5
+0x0d8358
<unknown>
libglib-2.0.so.0.8000.5
+0x064482
g_main_context_iteration
libQt6Core.so.6.8.0
+0x3baabc
QEventDispatcherGlib::processEvents (qeventdispatcher_glib.cpp:396)
libQt6Core.so.6.8.0
+0x1625a5
QEventLoop::processEvents (qeventloop.cpp:100)
libQt6Core.so.6.8.0
+0x1625a5
QEventLoop::exec (qeventloop.cpp:191)
libQt6Core.so.6.8.0
+0x159c6e
QCoreApplication::exec (qcoreapplication.cpp:1517)
plasmashell
+0x02814e
main (main.cpp:188)
libc.so.6
+0x02618e
<unknown>
libc.so.6
+0x02624a
__libc_start_main
plasmashell
+0x028664
_start 

Test plan

Screenshots or screen recordings

Bugs fixed

SENTRY: PLASMA-WORKSPACE-1096

@littlesweet

Merge request reports