Summary: | Crash while alt tabbing with Cover switch | ||
---|---|---|---|
Product: | [Plasma] kwin | Reporter: | Arnout Boelens <a.m.p.boelens> |
Component: | compositing | Assignee: | Martin Flöser <mgraesslin> |
Status: | RESOLVED FIXED | ||
Severity: | crash | ||
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Compiled Sources | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | Backtrace kwin |
Description
Arnout Boelens
2008-04-15 19:13:27 UTC
Created attachment 24341 [details]
Backtrace kwin
I have never seen a crash with this effect... When looking at the backtrace I saw one thing that struck me: do you have the zoom effect enabled when the crash appeared? I just checked and yes, zoom was enabled. >I just checked and yes, zoom was enabled.
It was a guess and I think I guessed wrong.
As you post in your initial comment it will become difficult to track this crash. I looked at the mentioned code and I have a very good guess.
for( int i=0; i < rightWindowCount; i++ )
{
EffectWindow* window = rightWindows->at( i );
x = window->x();
...
}
The crash appears when accessing the window pointer. rightWindowCount is a previous stored "rightWindows->count()". So in case that one window disappears during window switching rightWindowCount > rightWindows->count() in the for loop leading to a null pointer.
Do you think that this is possible in your situation? A window disappearing during switching? I know kopete to be such a candidate. If yes I would prepare a patch with some null pointer checks.
I do remember I was opening and closing some programs at the moment the crash happened, so what you are saying sounds very probable. SVN commit 802111 by graesslin: Adding some checks for Null-pointers. This should prevent from very unlikely crashes when a window closes during the animation. BUG: 160871 M +10 -0 coverswitch.cpp WebSVN link: http://websvn.kde.org/?view=rev&revision=802111 |