https://bugs.kde.org/show_bug.cgi?id=413403

            Bug ID: 413403
           Summary: Closing of Rules Dialog causes crash/flickering
           Product: kwin
           Version: 5.17.1
          Platform: Other
                OS: Linux
            Status: REPORTED
          Severity: normal
          Priority: NOR
         Component: general
          Assignee: kwin-bugs-n...@kde.org
          Reporter: k...@david-redondo.de
  Target Milestone: ---

SUMMARY
After closing the rules dialog the screen flickers and sometimes kwin crashes.
So far I only saw the crash on Wayland while the flickering also happens on
X11.

STEPS TO REPRODUCE
1. Right click on the titlebar of window 
2. Open "Configure Special Application Settings"
3. Close the dialog by clicking on the close button in the titlebar

SOFTWARE/OS VERSIONS
KDE Plasma Version: 5.17.1
KDE Frameworks Version: 5.63.0
Qt Version: 5.13.1

Backtrace:
#0  0x00007fcef0d44bcf in KWin::DmabufBuffer::removeImages()
    (this=this@entry=0x558f3ed29b00)
    at ./platformsupport/scenes/opengl/linux_dmabuf.cpp:225
#1  0x00007fcef0d46578 in KWin::DmabufBuffer::~DmabufBuffer()
    (this=0x558f3ed29b00, __in_chrg=<optimized out>)
    at ./platformsupport/scenes/opengl/linux_dmabuf.cpp:206
#2  0x00007fcef0d46779 in KWin::DmabufBuffer::~DmabufBuffer()
    (this=0x558f3ed29b00, __in_chrg=<optimized out>)
    at ./platformsupport/scenes/opengl/linux_dmabuf.cpp:215
#3  0x00007fcf0154ee52 in  ()
    at /usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#4  0x00007fcf0154eeae in wl_resource_destroy ()
    at /usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#5  0x00007fcefb167dae in ffi_call_unix64 ()
    at /usr/lib/x86_64-linux-gnu/libffi.so.6
#6  0x00007fcefb16771f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#7  0x00007fcf015527e4 in  ()
    at /usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#8  0x00007fcf0154f26f in  ()
    at /usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#9  0x00007fcf01550832 in wl_event_loop_dispatch ()
    at /usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#10 0x00007fcf0acc2d0e in KWayland::Server::Display::Private::dispatch() ()
--Type <RET> for more, q to quit, c to continue without paging--
   usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
#11 0x00007fcf095c982f in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffd0bc77a30, r=0x558f3e164ba0, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#12 0x00007fcf095c982f in QMetaObject::activate(QObject*, int, int, void**)
    (sender=sender@entry=0x558f3e146050, signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=0, argv=<optimized out>,
    argv@entry=0x7ffd0bc77a30) at kernel/qobject.cpp:3789
#13 0x00007fcf095c9dd7 in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
    (sender=sender@entry=0x558f3e146050, m=m@entry=0x7fcf09a4ec40
<QSocketNotifier::staticMetaObject>,
local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd0bc77a30)
at kernel/qobject.cpp:3660
#14 0x00007fcf095d5e68 in QSocketNotifier::activated(int,
QSocketNotifier::QPrivateSignal) (this=this@entry=0x558f3e146050,
_t1=<optimized out>, _t2=...)
    at .moc/moc_qsocketnotifier.cpp:141
#15 0x00007fcf095d6222 in QSocketNotifier::event(QEvent*) (this=0x558f3e146050,
e=0x7ffd0bc77d10) at kernel/qsocketnotifier.cpp:266
#16 0x00007fcf09bb3eac in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    (this=this@entry=0x558f3e0fe480, receiver=receiver@entry=0x558f3e146050,
e=e@entry=0x7ffd0bc77d10) at kernel/qapplication.cpp:3703
#17 0x00007fcf09bbb4b0 in QApplication::notify(QObject*, QEvent*)
(this=0x7ffd0bc78120, receiver=0x558f3e146050, e=0x7ffd0bc77d10)
    at kernel/qapplication.cpp:3449
#18 0x00007fcf09598d48 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x558f3e146050, event=0x7ffd0bc77d10)
    at kernel/qcoreapplication.cpp:1095
#19 0x00007fcf095f3b33 in
QEventDispatcherUNIXPrivate::activateSocketNotifiers()
(this=this@entry=0x558f3e10f010) at kernel/qeventdispatcher_unix.cpp:304
#20 0x00007fcf095f3f62 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...)
    at kernel/qeventdispatcher_unix.cpp:509
#21 0x00007fcef4987dcd in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
()
    at /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/KWinQpaPlugin.so
#22 0x00007fcf09596eaa in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffd0bc77ec0, flags=..., flags@entry=...)
    at kernel/qeventloop.cpp:225
#23 0x00007fcf095a0220 in QCoreApplication::exec() () at
kernel/qcoreapplication.cpp:1403
#24 0x0000558f3d170e4e in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at ./main_wayland.cpp:677
(gdb) bt
#0  0x00007fcef0d44bcf in KWin::DmabufBuffer::removeImages()
(this=this@entry=0x558f3ed29b00) at
./platformsupport/scenes/opengl/linux_dmabuf.cpp:225
#1  0x00007fcef0d46578 in KWin::DmabufBuffer::~DmabufBuffer()
(this=0x558f3ed29b00, __in_chrg=<optimized out>)
    at ./platformsupport/scenes/opengl/linux_dmabuf.cpp:206
#2  0x00007fcef0d46779 in KWin::DmabufBuffer::~DmabufBuffer()
(this=0x558f3ed29b00, __in_chrg=<optimized out>)
    at ./platformsupport/scenes/opengl/linux_dmabuf.cpp:215
#3  0x00007fcf0154ee52 in  () at
/usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#4  0x00007fcf0154eeae in wl_resource_destroy () at
/usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#5  0x00007fcefb167dae in ffi_call_unix64 () at
/usr/lib/x86_64-linux-gnu/libffi.so.6
#6  0x00007fcefb16771f in ffi_call () at /usr/lib/x86_64-linux-gnu/libffi.so.6
#7  0x00007fcf015527e4 in  () at
/usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#8  0x00007fcf0154f26f in  () at
/usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#9  0x00007fcf01550832 in wl_event_loop_dispatch () at
/usr/lib/x86_64-linux-gnu/libwayland-server.so.0
#10 0x00007fcf0acc2d0e in KWayland::Server::Display::Private::dispatch() () at
/usr/lib/x86_64-linux-gnu/libKF5WaylandServer.so.5
#11 0x00007fcf095c982f in QtPrivate::QSlotObjectBase::call(QObject*, void**)
(a=0x7ffd0bc77a30, r=0x558f3e164ba0, this=<optimized out>)
    at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:394
#12 0x00007fcf095c982f in QMetaObject::activate(QObject*, int, int, void**)
    (sender=sender@entry=0x558f3e146050, signalOffset=<optimized out>,
local_signal_index=local_signal_index@entry=0, argv=<optimized out>,
    argv@entry=0x7ffd0bc77a30) at kernel/qobject.cpp:3789
#13 0x00007fcf095c9dd7 in QMetaObject::activate(QObject*, QMetaObject const*,
int, void**)
    (sender=sender@entry=0x558f3e146050, m=m@entry=0x7fcf09a4ec40
<QSocketNotifier::staticMetaObject>,
local_signal_index=local_signal_index@entry=0, argv=argv@entry=0x7ffd0bc77a30)
at kernel/qobject.cpp:3660
#14 0x00007fcf095d5e68 in QSocketNotifier::activated(int,
QSocketNotifier::QPrivateSignal) (this=this@entry=0x558f3e146050,
_t1=<optimized out>, _t2=...)
    at .moc/moc_qsocketnotifier.cpp:141
#15 0x00007fcf095d6222 in QSocketNotifier::event(QEvent*) (this=0x558f3e146050,
e=0x7ffd0bc77d10) at kernel/qsocketnotifier.cpp:266
#16 0x00007fcf09bb3eac in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    (this=this@entry=0x558f3e0fe480, receiver=receiver@entry=0x558f3e146050,
e=e@entry=0x7ffd0bc77d10) at kernel/qapplication.cpp:3703
#17 0x00007fcf09bbb4b0 in QApplication::notify(QObject*, QEvent*)
(this=0x7ffd0bc78120, receiver=0x558f3e146050, e=0x7ffd0bc77d10)
    at kernel/qapplication.cpp:3449
#18 0x00007fcf09598d48 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
(receiver=0x558f3e146050, event=0x7ffd0bc77d10)
    at kernel/qcoreapplication.cpp:1095
#19 0x00007fcf095f3b33 in
QEventDispatcherUNIXPrivate::activateSocketNotifiers()
(this=this@entry=0x558f3e10f010) at kernel/qeventdispatcher_unix.cpp:304
#20 0x00007fcf095f3f62 in
QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
(this=<optimized out>, flags=...)
    at kernel/qeventdispatcher_unix.cpp:509
#21 0x00007fcef4987dcd in
QUnixEventDispatcherQPA::processEvents(QFlags<QEventLoop::ProcessEventsFlag>)
()
    at /usr/lib/x86_64-linux-gnu/qt5/plugins/platforms/KWinQpaPlugin.so
#22 0x00007fcf09596eaa in
QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>)
(this=this@entry=0x7ffd0bc77ec0, flags=..., flags@entry=...)
    at kernel/qeventloop.cpp:225
#23 0x00007fcf095a0220 in QCoreApplication::exec() () at
kernel/qcoreapplication.cpp:1403
#24 0x0000558f3d170e4e in main(int, char**) (argc=<optimized out>,
argv=<optimized out>) at ./main_wayland.cpp:677

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to