Review Request 116712: [kwin] Disconnect lambda connection on destroy of slide effect

Martin Gräßlin mgraesslin at kde.org
Tue Mar 11 13:26:59 UTC 2014


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
https://git.reviewboard.kde.org/r/116712/
-----------------------------------------------------------

Review request for kwin, Plasma and Sebastian Kügler.


Repository: kde-workspace


Description
-------

[kwin] Disconnect lambda connection on destroy of slide effect

Lambda connections are tricky: they do not get automatically
disconnected when the captured [this] gets destroyed, but they get
disconnected when the sender object gets destroyed.

Thus the slide effect was crashing if it got disabled and a window
got deleted, because the connection was still present and tried to
access the destroyed this pointer.

To circumvent we need to store the QMetaObject::Connection and
disconnect when the SlideEffect gets destroyed. To not clutter the
private variables it's using another lambda.

--
Plasma and sebas are only added to highlight this GOTCHA!


Diffs
-----

  kwin/effects/slide/slide.cpp e6a8d588fe6ef7c7cb2981b0d49bf2c670753e2d 

Diff: https://git.reviewboard.kde.org/r/116712/diff/


Testing
-------


Thanks,

Martin Gräßlin

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20140311/b0f5ecb4/attachment.html>


More information about the Plasma-devel mailing list