Review Request: Ensure Plasma Desktop does not crash on exit with Qt 4.8

Thomas Lübking thomas.luebking at web.de
Tue Nov 22 10:43:37 GMT 2011



> On Nov. 22, 2011, 9:24 a.m., Thomas Lübking wrote:
> > plasma/private/containment_p.h, line 71
> > <http://git.reviewboard.kde.org/r/103202/diff/1/?file=41732#file41732line71>
> >
> >     ibeg your pardon?
> >     to me this looks like you delete the same entry forever (what *will* crash at a point) since you don't remove it - should be "takeFirst", yesno?
> 
> Ben Cooksley wrote:
>     Other code handles this for us - which is why qDeleteAll() crashes.
> 
> Thomas Lübking wrote:
>     sorry, but the only way i see this could be correct is that qlist (fun with templates) subclasses pointer Types and reimplements delete to automatically remove them from the list, what is, nicely spoken, sick.
>     is there any detailed (official) explanation on this?
> 
> Aaron J. Seigo wrote:
>     see ContainmentPrivate::appletDestroyed(Plasma::Applet *applet) in kdelibs/plasma/containment.cpp
> 
> Ben Cooksley wrote:
>     Only information I have is https://git.reviewboard.kde.org/r/102981/
>     I haven't checked the code, but i'm guessing that Plasma::Applet must do something similar to what Akregator does.
>     In any case, I tested and Plasma does not infinitely loop - it does close properly.

okey, thanks - that explains things.
qlist needs a mutex (at least as friend for qdeleteall) - and imho this here needs another comment since esp. the superfluous clear() makes it look like i bug. (written by touch in a shaky train ;-)


- Thomas


-----------------------------------------------------------
This is an automatically generated e-mail. To reply, visit:
http://git.reviewboard.kde.org/r/103202/#review8384
-----------------------------------------------------------


On Nov. 22, 2011, 7:39 a.m., Ben Cooksley wrote:
> 
> -----------------------------------------------------------
> This is an automatically generated e-mail. To reply, visit:
> http://git.reviewboard.kde.org/r/103202/
> -----------------------------------------------------------
> 
> (Updated Nov. 22, 2011, 7:39 a.m.)
> 
> 
> Review request for kdelibs and Plasma.
> 
> 
> Description
> -------
> 
> Qt 4.8 contains changes which break qDeleteAll() in certain scenarios. This patch fixes one of those scenarios to ensure that Plasma Desktop does not crash on quit or logout.
> 
> 
> Diffs
> -----
> 
>   plasma/private/containment_p.h 4025bf4 
> 
> Diff: http://git.reviewboard.kde.org/r/103202/diff/diff
> 
> 
> Testing
> -------
> 
> Compiled, Plasma Desktop no longer crashes on exit.
> 
> 
> Thanks,
> 
> Ben Cooksley
> 
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/kde-core-devel/attachments/20111122/31f05e99/attachment.htm>
-------------- next part --------------
_______________________________________________
Plasma-devel mailing list
Plasma-devel at kde.org
https://mail.kde.org/mailman/listinfo/plasma-devel


More information about the kde-core-devel mailing list