Review Request 128016: [OS X] Prevent a crash in the IdealDockWidget's context menu

René J.V. Bertin rjvbertin at gmail.com
Tue Jun 14 14:47:17 UTC 2016



> On June 2, 2016, 11:22 p.m., Milian Wolff wrote:
> >

Gmail keeps putting RR notifications in my spam folder :-/


> On June 2, 2016, 11:22 p.m., Milian Wolff wrote:
> > sublime/idealdockwidget.cpp, line 117
> > <https://git.reviewboard.kde.org/r/128016/diff/3/?file=465501#file465501line117>
> >
> >     dito with the comma. and using this + qscopedpointer? you can remove the `this`, no?

Actually I *must* replace it, with a NULL ptr (QActionGroup requires an explicit parent). I'm not exactly sure why but given `this` as a parent leads to a systematic crash when g goes out of scope after removing a toolview. Maybe that the `this` object is discarded at that moment, leading to the immediate deletion of the QActionGroup instead of disposing it via deleteLater?


> On June 2, 2016, 11:22 p.m., Milian Wolff wrote:
> > sublime/idealdockwidget.cpp, line 196
> > <https://git.reviewboard.kde.org/r/128016/diff/3/?file=465501#file465501line196>
> >
> >     unrelated hunk, undo

Heh, the opposite effect of forgetting to add braces when adding a statement to an if/else block :)


- René J.V.


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


On May 26, 2016, 5:34 p.m., René J.V. Bertin wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> https://git.reviewboard.kde.org/r/128016/
> -----------------------------------------------------------
> 
> (Updated May 26, 2016, 5:34 p.m.)
> 
> 
> Review request for KDevelop.
> 
> 
> Repository: kdevplatform
> 
> 
> Description
> -------
> 
> OS X can be capricious when instances corresponding to a widget are deleted, if the class in question uses "native" ObjC SDKs behind the scenes. Pending events can in that case be (generated and) delivered to objects that were already deleted.
> According to the documentation, one should prefer to use `QObject::deleteLater()` rather than the regular, direct `delete` whether it be explicit or implicit.
> 
> I've long used a local patch that uses this approach in order to prevent a recurring crash after using the context menu of the "ideal dock widget". Somehow I never put it up for review here, apparently.
> 
> 
> Diffs
> -----
> 
>   sublime/idealdockwidget.cpp dae0ea2 
> 
> Diff: https://git.reviewboard.kde.org/r/128016/diff/
> 
> 
> Testing
> -------
> 
> Builds and permits reliable behaviour on both OS X and Linux.
> 
> 
> Thanks,
> 
> René J.V. Bertin
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kdevelop-devel/attachments/20160614/90fb4542/attachment-0001.html>


More information about the KDevelop-devel mailing list