Since lifetime of a KWindowShadow doesn't strictly match the lifetime
of the associated widget, we need to unregister the shadow when it's
destroyed in order to prevent accessing or deleting dangling pointers
afterwards.
BUG: 416854
broulik |
Plasma |
Since lifetime of a KWindowShadow doesn't strictly match the lifetime
of the associated widget, we need to unregister the shadow when it's
destroyed in order to prevent accessing or deleting dangling pointers
afterwards.
BUG: 416854
plasmashell no longer crashes.
Automatic diff as part of commit; lint not applicable. |
Automatic diff as part of commit; unit tests not applicable. |
kstyle/breezeshadowhelper.h | ||
---|---|---|
157 ↗ | (On Diff #74497) | if this is a thing, maybe it would make sense to actually try and remove the KWindowShadows upon destruction? |
kstyle/breezeshadowhelper.h | ||
---|---|---|
157 ↗ | (On Diff #74497) | We have a connection to destroyed for the widget which isn't reached when a window is destroyed on QApplication teardown, so I think the same might be true for the window, I would still prefer this over a QPointer. |
+1
Can confirm that the QWindow belonging to KlipperPopup that caused the crash before is destroyed before the destructor, fixing the crash.