diff options
authorKai Uwe Broulik <>2017-04-18 21:46:16 (GMT)
committerKai Uwe Broulik <>2017-04-18 21:46:16 (GMT)
commit58206408a35a0900b5678231b7aaf490b2a3ec10 (patch)
parentef12ad389ee48208e7a7c8520dc3a05864d2fe87 (diff)
When deleting the panel the notifications applet is in, the containment is being destroyed but the corona
is still there and rightfully emits availableScreenRectChanged. This will cause us to crash when we try to access the no-longer existing containment. CCBUG: 378508 Differential Revision:
1 files changed, 6 insertions, 0 deletions
diff --git a/applets/notifications/lib/notificationsapplet.cpp b/applets/notifications/lib/notificationsapplet.cpp
index 7b31154..4474c8c 100644
--- a/applets/notifications/lib/notificationsapplet.cpp
+++ b/applets/notifications/lib/notificationsapplet.cpp
@@ -61,6 +61,12 @@ void NotificationsApplet::init()
void NotificationsApplet::onScreenChanges()
+ // when removing the panel the applet is in, the containment is being destroyed but its corona is still
+ // there, rightfully emitting availableScreenRectChanged and then we blow up if we try to access it.
+ if (!containment()) {
+ return;
+ }
m_availableScreenRect = containment()->corona()->availableScreenRect(containment()->screen());
Q_EMIT availableScreenRectChanged(m_availableScreenRect);