crashes in DesktopLayout

Ambroz Bizjak ambro at b4ever.net
Sun Oct 26 03:30:28 CET 2008


On Sunday 26 October 2008 01:33:05 Aaron J. Seigo wrote:
> hi Abroz...
>
> i've started getting a crash on-startup in DesktopLayout:

I can reproduce the crash with your config.

When the layout is activated, DesktopLayout::setGeometry is called. It calls 
ItemSpace to calculates pushes, and then applies new geometries to applets. As 
an applet is assigned a new geometry, DesktopLayout::itemGeometryChanged 
naturally gets called before the applet's setGeometry function returns. While 
itemGeometryChanged should do nothing in this case (the layout is being 
activated), is really continues and modifies the layout's structures, causing 
that crash during the iteration.

Apparently QGraphicsLayout::isActivated is lying. I'm attaching a patch that 
adds a variable to make sure nothing is changed while the layout is being 
activated, and I'll commit it, but it's a hack. We really should analyze what 
is causing that behaviour.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: plasma-crash2.patch
Type: text/x-patch
Size: 1941 bytes
Desc: not available
Url : http://mail.kde.org/pipermail/plasma-devel/attachments/20081026/d642c6ca/attachment.patch 


More information about the Plasma-devel mailing list