Comment 17 for bug 410432

Revision history for this message
In , Octavian Voicu (octavian-voicu) wrote :

Steps to reliably reproduce the bug:

1. Activate composting + Cover Switch effect
2. Start dragging something and keep the button pressed
2a. Drag a file from a Dolphin window
2b. Drag a file from an Ark window
3. Press Alt and keep it pressed
4. Tap the Alt key until the window from which you dragged the file is just to the left of the central window in the Cover Switch effect (you should have at least 3-4 open windows on current desktop)
5. Move mouse in the center of the window to the left of the central window, while still keeping the mouse button and Alt key pressed
6. Release the Alt key and *immediately* drag the mouse upwards; the window from which you dragged the item should crash

Steps 4 and 5 don't seem very important, some crashes happen irrelevant of where the file is dropped. Step 6 is crucial (moving the mouse immediately after releasing the item).

Something similar can be used to cause a crash for the Flip Switch effect.
Other effects seem unaffected (probably because they don't really move windows).

The stack trace of the crash is either similar with the one in this report or with the one in #200583 (https://bugs.kde.org/show_bug.cgi?id=200583) -- seems a bit random which one.

Sometimes, not only the app from which you dragged the item crashes, but kwin too. Here is a sample stack trace from such a crash, but I've seen kwin crashes in other places too (this is from the Flip Switch effect; doing this with the Cover switch crashes kwin more frequently):

Application: KWin (kwin), signal: Aborted
[KCrash Handler]
#5 0x00007f1786426fb5 in *__GI_raise (sig=<value optimized out>) at ../nptl/sysdeps/unix/sysv/linux/raise.c:64
#6 0x00007f1786428bc3 in *__GI_abort () at abort.c:88
#7 0x00007f178b991ce5 in KWin::EffectsHandlerImpl::destroyInputWindow (this=0x114d040, w=61073505) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:727
#8 0x00007f177c4b7abb in KWin::CoverSwitchEffect::abort (this=0x19c6230) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects/coverswitch/coverswitch.cpp:1421
#9 0x00007f177c4bac80 in KWin::CoverSwitchEffect::prePaintScreen (this=0x19c6230, data=@0x7fff93ddc490, time=98)
    at /build/buildd/kdebase-workspace-4.2.98/kwin/effects/coverswitch/coverswitch.cpp:113
#10 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#11 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#12 0x00007f177c48ac5c in KWin::LoginEffect::prePaintScreen (this=0x12f9a50, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects/login/login.cpp:52
#13 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#14 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#15 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#16 0x00007f177c4deaba in KWin::TrackMouseEffect::prePaintScreen (this=0x1324210, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects/trackmouse/trackmouse.cpp:66
#17 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#18 0x00007f177c4d43b4 in KWin::LookingGlassEffect::prePaintScreen (this=0x13235a0, data=@0x7fff93ddc490, time=98)
    at /build/buildd/kdebase-workspace-4.2.98/kwin/effects/lookingglass/lookingglass.cpp:153
#19 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#20 0x00007f178b99145b in KWin::EffectsHandlerImpl::prePaintScreen (this=0x114d040, data=@0x7fff93ddc490, time=98) at /build/buildd/kdebase-workspace-4.2.98/kwin/effects.cpp:112
#21 0x00007f178b97ce4e in KWin::Scene::paintScreen (this=0x10b5d90, mask=0x7fff93ddc5bc, region=0x7fff93ddc6c0) at /build/buildd/kdebase-workspace-4.2.98/kwin/scene.cpp:113
#22 0x00007f178b98b92f in KWin::SceneOpenGL::paint (this=0x10b5d90, damage={d = 0x7fff93ddc6c0, static shared_empty = {ref = {_q_value = 630}, rgn = 0x0, xrectangles = 0x0, qt_rgn = 0x0}},
    toplevels=<value optimized out>) at /build/buildd/kdebase-workspace-4.2.98/kwin/scene_opengl.cpp:746
#23 0x00007f178b9782e6 in KWin::Workspace::performCompositing (this=0x10e0700) at /build/buildd/kdebase-workspace-4.2.98/kwin/composite.cpp:420
#24 0x00007f178b913e8a in KWin::Workspace::qt_metacall (this=0x10e0700, _c=QMetaObject::InvokeMetaMethod, _id=<value optimized out>, _a=0x7fff93ddc850)
    at /build/buildd/kdebase-workspace-4.2.98/obj-x86_64-linux-gnu/kwin/workspace.moc:473
#25 0x00007f1788fea1f2 in QMetaObject::activate (sender=0x10e0b28, from_signal_index=<value optimized out>, to_signal_index=4, argv=0xffffffffffffffff) at kernel/qobject.cpp:3069
#26 0x00007f1788fe44d3 in QObject::event (this=0x10e0b28, e=0x1125) at kernel/qobject.cpp:1082
#27 0x00007f178971978d in QApplicationPrivate::notify_helper (this=0xe93d80, receiver=0x10e0b28, e=0x7fff93ddcf00) at kernel/qapplication.cpp:4084
#28 0x00007f178972197a in QApplication::notify (this=0x7fff93ddd270, receiver=0x10e0b28, e=0x7fff93ddcf00) at kernel/qapplication.cpp:4049
#29 0x00007f178ac8671b in KApplication::notify (this=0x7fff93ddd270, receiver=0x10e0b28, event=0x7fff93ddcf00) at /build/buildd/kde4libs-4.2.98a/kdeui/kernel/kapplication.cpp:302
#30 0x00007f1788fd475c in QCoreApplication::notifyInternal (this=0x7fff93ddd270, receiver=0x10e0b28, event=0x7fff93ddcf00) at kernel/qcoreapplication.cpp:602
#31 0x00007f17890017f6 in QTimerInfoList::activateTimers (this=0xe979e0) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:213
#32 0x00007f1788ffdf0d in timerSourceDispatch (source=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:164
#33 0x00007f17822ce20a in IA__g_main_context_dispatch (context=0xe96920) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:1814
#34 0x00007f17822d18e0 in g_main_context_iterate (context=0xe96920, block=1, dispatch=1, self=<value optimized out>) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2448
#35 0x00007f17822d1a7c in IA__g_main_context_iteration (context=0xe96920, may_block=1) at /build/buildd/glib2.0-2.20.1/glib/gmain.c:2511
#36 0x00007f1788ffde6f in QEventDispatcherGlib::processEvents (this=0xe7ae80, flags=<value optimized out>) at kernel/qeventdispatcher_glib.cpp:323
#37 0x00007f17897b1bef in QGuiEventDispatcherGlib::processEvents (this=0x1125, flags=<value optimized out>) at kernel/qguieventdispatcher_glib.cpp:202
#38 0x00007f1788fd3002 in QEventLoop::processEvents (this=<value optimized out>, flags={i = -1814179472}) at kernel/qeventloop.cpp:149
#39 0x00007f1788fd33cd in QEventLoop::exec (this=0x7fff93ddd1b0, flags={i = -1814179392}) at kernel/qeventloop.cpp:200
#40 0x00007f1788fd5694 in QCoreApplication::exec () at kernel/qcoreapplication.cpp:880
#41 0x00007f178b92c038 in kdemain (argc=3, argv=0x7fff93ddd758) at /build/buildd/kdebase-workspace-4.2.98/kwin/main.cpp:527
#42 0x00007f17864125a6 in __libc_start_main (main=0x4008c0 <main>, argc=3, ubp_av=0x7fff93ddd758, init=0x4008f0 <__libc_csu_init>, fini=<value optimized out>, rtld_fini=<value optimized out>,
    stack_end=0x7fff93ddd748) at libc-start.c:220
#43 0x00000000004007f9 in _start () at ../sysdeps/x86_64/elf/start.S:113