[libtaskmanager] Fix shared VirtualDesktopInfo::Private tied to the 1st creator
ClosedPublic

Authored by davidedmundson on Feb 9 2020, 3:21 PM.

Details

Summary

VirtualDesktopInfo::Private is ref counted and shared between N
VirtualDesktopInfo's.

We were passing the first VirtualDesktopInfo as a parent to
VirtualDesktopInfo::Private which didn't manage the lifespan or do
anything useful.

The wayland backend incorrectly used this 'q' object and spanned
mulitple internal objects and connections to the first object that
created the shared private instance, leaving us with dangly objects
inside.

BUG: 415200
(and possibly several other bugs of wayland task manager not updating
correctly)

Test Plan

Compiles
Plasma still loads

Diff Detail

Repository
R120 Plasma Workspace
Lint
Automatic diff as part of commit; lint not applicable.
Unit
Automatic diff as part of commit; unit tests not applicable.
davidedmundson created this revision.Feb 9 2020, 3:21 PM
Restricted Application added a project: Plasma. · View Herald TranscriptFeb 9 2020, 3:21 PM
Restricted Application added a subscriber: plasma-devel. · View Herald Transcript
davidedmundson requested review of this revision.Feb 9 2020, 3:21 PM
zzag accepted this revision.Feb 11 2020, 1:45 PM
This revision is now accepted and ready to land.Feb 11 2020, 1:45 PM
This revision was automatically updated to reflect the committed changes.