Bug 216908

Summary: KWin crashed after a Konqueror crash
Product: [Plasma] kwin Reporter: Aurelien Gateau <agateau>
Component: generalAssignee: KWin default assignee <kwin-bugs-null>
Status: RESOLVED FIXED    
Severity: crash CC: 1lukas1, amantia, arvidjaar, bartek, bigras.bruno, bugzilla, jbrsubscribe, julroy67, kde, kde, kourtzis, m.sledziona, marcus, markm999, markotahal, mitunin.dmitry, null, out.there, pascal, RunebladeOmega, t.kijas, vo.zaeb, wittemar, xtekhne
Priority: NOR    
Version: git master   
Target Milestone: ---   
Platform: Compiled Sources   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: New crash information added by DrKonqi

Description Aurelien Gateau 2009-12-01 10:16:03 UTC
KWin crashed right after a Konqueror crash. For some reason the backtrace got lost by the report tool, but I was able to read it and it pointed to the Scene::Window::buildQuads() method from kdebase/workspace/kwin/scene.cpp, line 487.

Looking at the code I can see a dynamic cast which is not tested:

----
Client *client = dynamic_cast<Client*>( toplevel );
QRegion contents = clientShape();
QRegion center = client->transparentRect(); // <- Crash
QRegion decoration = (client && Workspace::self()->decorationHasAlpha() ?
                      QRegion(client->decorationRect()) : shape()) - center;

----

If the dynamic_cast fails, client->transparentRect() crashes. Further code does test for the validity of client, so it can probably be fixed. I do not know the code enough to do it myself, though.
Comment 1 Martin Flöser 2009-12-01 10:31:50 UTC
SVN commit 1056931 by graesslin:

Crash less
BUG: 216908

 M  +1 -1      scene.cpp  


WebSVN link: http://websvn.kde.org/?view=rev&revision=1056931
Comment 2 Christoph Feck 2009-12-08 05:27:13 UTC
Shouldn't this also fix the crashes that happen in buildQuads (scene.cpp 485) from bug 216609 and duplicates?
Comment 3 Martin Flöser 2009-12-08 09:13:43 UTC
(In reply to comment #2)
> Shouldn't this also fix the crashes that happen in buildQuads (scene.cpp 485)
> from bug 216609 and duplicates?
Yes indeed they are the same. Thanks. (I think I have to reshuffle some duplicates)
Comment 4 Martin Flöser 2009-12-08 09:44:07 UTC
*** Bug 217831 has been marked as a duplicate of this bug. ***
Comment 5 Martin Flöser 2009-12-08 09:44:47 UTC
*** Bug 217761 has been marked as a duplicate of this bug. ***
Comment 6 Martin Flöser 2009-12-08 09:45:12 UTC
*** Bug 217671 has been marked as a duplicate of this bug. ***
Comment 7 Martin Flöser 2009-12-08 09:45:38 UTC
*** Bug 217552 has been marked as a duplicate of this bug. ***
Comment 8 Martin Flöser 2009-12-08 09:46:03 UTC
*** Bug 217461 has been marked as a duplicate of this bug. ***
Comment 9 Martin Flöser 2009-12-08 09:46:18 UTC
*** Bug 216813 has been marked as a duplicate of this bug. ***
Comment 10 Martin Flöser 2009-12-08 09:46:40 UTC
*** Bug 216609 has been marked as a duplicate of this bug. ***
Comment 11 Martin Flöser 2009-12-08 09:46:56 UTC
*** Bug 217817 has been marked as a duplicate of this bug. ***
Comment 12 lucas 2009-12-09 06:01:25 UTC
*** Bug 217945 has been marked as a duplicate of this bug. ***
Comment 13 Martin Flöser 2009-12-09 13:31:20 UTC
*** Bug 217979 has been marked as a duplicate of this bug. ***
Comment 14 Thomas Lübking 2009-12-10 19:31:33 UTC
*** Bug 218150 has been marked as a duplicate of this bug. ***
Comment 15 Martin Flöser 2009-12-12 11:57:09 UTC
*** Bug 218370 has been marked as a duplicate of this bug. ***
Comment 16 Martin Flöser 2009-12-12 18:23:37 UTC
*** Bug 218405 has been marked as a duplicate of this bug. ***
Comment 17 Martin Flöser 2009-12-14 10:32:49 UTC
*** Bug 218621 has been marked as a duplicate of this bug. ***
Comment 18 Marek Śledziona 2009-12-14 14:43:54 UTC
Created attachment 39042 [details]
New crash information added by DrKonqi
Comment 19 Martin Flöser 2009-12-15 08:54:53 UTC
*** Bug 218761 has been marked as a duplicate of this bug. ***
Comment 20 Martin Flöser 2009-12-15 23:13:05 UTC
*** Bug 218850 has been marked as a duplicate of this bug. ***
Comment 21 Thomas Lübking 2009-12-15 23:40:00 UTC
*** Bug 218851 has been marked as a duplicate of this bug. ***
Comment 22 Thomas Lübking 2009-12-16 16:21:52 UTC
*** Bug 218936 has been marked as a duplicate of this bug. ***
Comment 23 Thomas Lübking 2009-12-16 16:25:51 UTC
*** Bug 218942 has been marked as a duplicate of this bug. ***
Comment 24 Martin Flöser 2009-12-17 14:45:39 UTC
*** Bug 219071 has been marked as a duplicate of this bug. ***
Comment 25 Thomas Lübking 2009-12-19 00:01:02 UTC
*** Bug 219255 has been marked as a duplicate of this bug. ***
Comment 26 Thomas Lübking 2009-12-19 23:31:27 UTC
*** Bug 219364 has been marked as a duplicate of this bug. ***
Comment 27 Martin Flöser 2009-12-21 16:14:49 UTC
*** Bug 219565 has been marked as a duplicate of this bug. ***
Comment 28 Martin Flöser 2009-12-21 23:10:55 UTC
*** Bug 219607 has been marked as a duplicate of this bug. ***
Comment 29 Martin Flöser 2009-12-27 10:34:42 UTC
*** Bug 220038 has been marked as a duplicate of this bug. ***
Comment 30 Martin Flöser 2009-12-28 11:34:09 UTC
*** Bug 220369 has been marked as a duplicate of this bug. ***
Comment 31 Martin Flöser 2009-12-30 10:13:17 UTC
*** Bug 220633 has been marked as a duplicate of this bug. ***
Comment 32 Martin Flöser 2009-12-31 14:54:58 UTC
*** Bug 220810 has been marked as a duplicate of this bug. ***
Comment 33 Martin Flöser 2010-01-10 12:32:32 UTC
*** Bug 222040 has been marked as a duplicate of this bug. ***
Comment 34 Martin Flöser 2010-01-17 10:02:40 UTC
*** Bug 223061 has been marked as a duplicate of this bug. ***
Comment 35 Martin Flöser 2010-01-18 09:25:58 UTC
*** Bug 223178 has been marked as a duplicate of this bug. ***