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

Thomas Lübking thomas.luebking at gmail.com
Wed Mar 12 22:14:17 UTC 2014



> On March 12, 2014, 2:51 p.m., Thomas Lübking wrote:
> > Ship It!
> 
> Thomas Lübking wrote:
>     Do you think the Qt API doc would require a BIG FAT WARNING on this?
> 
> Martin Gräßlin wrote:
>     wouldn't hurt to have that better. Doesn't need to be a big fat warning, but at least it should be mentioned that it doesn't get disconnected if a captured object gets destroyed.

https://bugreports.qt-project.org/browse/QTBUG-37472


- Thomas


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


On March 12, 2014, 3:35 p.m., Martin Gräßlin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/116712/
> -----------------------------------------------------------
> 
> (Updated March 12, 2014, 3:35 p.m.)
> 
> 
> 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/20140312/7d5d1761/attachment.html>


More information about the Plasma-devel mailing list