davidedmundson created this revision. Restricted Application added a project: Plasma. Restricted Application added a subscriber: plasma-devel.
REVISION SUMMARY KIdleTime is a global static, it's destructor it deletes the backend in a deleteLater; This is *after* the app has been deleted. This means we end up deleting Poller's ConnectionThread after the static QVector managing the ConnectionThreads in the main app has been deleted, leading to a confusing crash. We can fix this by deleting the connection thread in unload rather than the actual object destruction. This fixes a crash on app close, most notably the recursive drkonqi crash. TEST PLAN Verified what was happening by subclassing the vector and adding debug Had the drkonqi crash loop, made this change, no more crashes REPOSITORY R130 Frameworks integration plugin using KWayland BRANCH master REVISION DETAIL https://phabricator.kde.org/D8285 AFFECTED FILES src/idletime/poller.cpp src/idletime/poller.h To: davidedmundson Cc: plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart