Avoid potential disconnect of all signals in IconItem
ClosedPublic

Authored by davidedmundson on May 14 2020, 11:36 AM.

Details

Summary

m_svgIcon can be null.

disconnect(q, nullptr, nullptr, nullptr); would have pretty catastrophic
consequences as it disconnects everything. Anyone listening for
QObject::destroyed of IconItem for cleanup would no longer get anything.
That could lead to obscure conditions.

ShaderEffectSource watches for the source being destroyed for cleanup
and we have a newly introduced crash with ShaderEffectSource that seems
to come from this patch.

CCBUG: 421170

Test Plan

Uploading for someone to reproduce to test

Diff Detail

Repository
R242 Plasma Framework (Library)
Branch
master
Lint
No Linters Available
Unit
No Unit Test Coverage
Build Status
Buildable 26891
Build 26909: arc lint + arc unit
Restricted Application added a project: Frameworks. · View Herald TranscriptMay 14 2020, 11:36 AM
Restricted Application added a subscriber: kde-frameworks-devel. · View Herald Transcript
davidedmundson requested review of this revision.May 14 2020, 11:36 AM
ahiemstra accepted this revision.May 14 2020, 11:40 AM
ahiemstra added a subscriber: ahiemstra.

This fixes bug 421170 for me.

This revision is now accepted and ready to land.May 14 2020, 11:40 AM
This revision was automatically updated to reflect the committed changes.