Bug 405391 - kate crashes on Wayland when closed with ctrl+q
Summary: kate crashes on Wayland when closed with ctrl+q
Status: RESOLVED WORKSFORME
Alias: None
Product: kate
Classification: Applications
Component: general (other bugs)
Version First Reported In: 18.12.3
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-03-12 13:16 UTC by Patrick Silva
Modified: 2019-04-29 20:02 UTC (History)
0 users

See Also:
Latest Commit:
Version Fixed In:
Sentry Crash Report:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Patrick Silva 2019-03-12 13:16:28 UTC
Application: kate (18.12.3)

Qt Version: 5.12.1
Frameworks Version: 5.56.0
Operating System: Linux 5.0.0-arch1-1-ARCH x86_64
Distribution (Platform): Archlinux Packages

-- Information about the crash:
- What I was doing when the application crashed:
open kate on Wayland
press ctrl+q to close kate
plasma shows crash notification

The crash can be reproduced every time.

-- Backtrace:
Application: Kate (kate), signal: Segmentation fault
Using host libthread_db library "/usr/lib/libthread_db.so.1".
[Current thread is 1 (Thread 0x7ff142b431c0 (LWP 21177))]

Thread 3 (Thread 0x7ff137beb700 (LWP 21180)):
#0  0x00007ff147441afc in futex_wait_cancelable (private=0, expected=0, futex_word=0x560c00afdde8) at ../sysdeps/unix/sysv/linux/futex-internal.h:88
#1  0x00007ff147441afc in __pthread_cond_wait_common (abstime=0x0, mutex=0x560c00afdd98, cond=0x560c00afddc0) at pthread_cond_wait.c:502
#2  0x00007ff147441afc in __pthread_cond_wait (cond=0x560c00afddc0, mutex=0x560c00afdd98) at pthread_cond_wait.c:655
#3  0x00007ff1381dac94 in cnd_wait (mtx=0x560c00afdd98, cond=0x560c00afddc0) at ../mesa-18.3.4/src/../include/c11/threads_posix.h:155
#4  0x00007ff1381dac94 in util_queue_thread_func (input=input@entry=0x560c00ea6240) at ../mesa-18.3.4/src/util/u_queue.c:270
#5  0x00007ff1381da9b8 in impl_thrd_routine (p=<optimized out>) at ../mesa-18.3.4/src/../include/c11/threads_posix.h:87
#6  0x00007ff14743ba9d in start_thread (arg=<optimized out>) at pthread_create.c:486
#7  0x00007ff1483f8af3 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 2 (Thread 0x7ff1412da700 (LWP 21179)):
#0  0x00007ff1483e9774 in __GI___libc_read (nbytes=16, buf=0x7ff1412d9b10, fd=5) at ../sysdeps/unix/sysv/linux/read.c:26
#1  0x00007ff1483e9774 in __GI___libc_read (fd=5, buf=0x7ff1412d9b10, nbytes=16) at ../sysdeps/unix/sysv/linux/read.c:24
#2  0x00007ff144ba7961 in read (__nbytes=16, __buf=0x7ff1412d9b10, __fd=<optimized out>, __fd=<optimized out>, __buf=<optimized out>, __nbytes=<optimized out>) at /usr/include/bits/unistd.h:44
#3  0x00007ff144ba7961 in g_wakeup_acknowledge (wakeup=0x560c006582c0) at ../glib/glib/gwakeup.c:210
#4  0x00007ff144bf7e40 in g_main_context_check (context=context@entry=0x7ff13c000bf0, max_priority=2147483647, fds=fds@entry=0x7ff13c005260, n_fds=n_fds@entry=1) at ../glib/glib/gmain.c:3705
#5  0x00007ff144bf9636 in g_main_context_iterate (context=context@entry=0x7ff13c000bf0, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:3924
#6  0x00007ff144bf977e in g_main_context_iteration (context=0x7ff13c000bf0, may_block=may_block@entry=1) at ../glib/glib/gmain.c:3988
#7  0x00007ff148924d04 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) (this=0x7ff13c000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#8  0x00007ff1488cdb2c in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) (this=this@entry=0x7ff1412d9d30, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#9  0x00007ff148711569 in QThread::exec() (this=this@entry=0x7ff148c14080 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#10 0x00007ff148b98ba6 in QDBusConnectionManager::run() (this=0x7ff148c14080 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178
#11 0x00007ff14871296c in QThreadPrivate::start(void*) (arg=0x7ff148c14080 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:361
#12 0x00007ff14743ba9d in start_thread (arg=<optimized out>) at pthread_create.c:486
#13 0x00007ff1483f8af3 in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:95

Thread 1 (Thread 0x7ff142b431c0 (LWP 21177)):
[KCrash Handler]
#6  0x00007ff1488ced94 in qGetPtrHelper<QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > >(QScopedPointer<QObjectData, QScopedPointerDeleter<QObjectData> > const&) (ptr=...) at global/qglobal.h:1038
#7  0x00007ff1488ced94 in QObject::d_func() (this=0x0) at ../../include/QtCore/../../src/corelib/kernel/qobject.h:121
#8  0x00007ff1488ced94 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x0, event=0x7ffc249397f0) at kernel/qcoreapplication.cpp:1055
#9  0x00007ff149469f72 in QWidgetWindow::event(QEvent*) (event=0x7ffc249397f0, this=0x560c00e86c00) at kernel/qwidgetwindow.cpp:274
#10 0x00007ff149469f72 in QWidgetWindow::event(QEvent*) (this=0x560c00e86c00, event=0x7ffc249397f0) at kernel/qwidgetwindow.cpp:224
#11 0x00007ff14940ae24 in QApplicationPrivate::notify_helper(QObject*, QEvent*) (this=this@entry=0x560c00605650, receiver=receiver@entry=0x560c00e86c00, e=e@entry=0x7ffc249397f0) at kernel/qapplication.cpp:3753
#12 0x00007ff1494126e1 in QApplication::notify(QObject*, QEvent*) (this=0x7ffc24939ef0, receiver=0x560c00e86c00, e=0x7ffc249397f0) at kernel/qapplication.cpp:3500
#13 0x00007ff1488cee99 in QCoreApplication::notifyInternal2(QObject*, QEvent*) (receiver=0x560c00e86c00, event=0x7ffc249397f0) at ../../include/QtCore/5.12.1/QtCore/private/../../../../../src/corelib/thread/qthread_p.h:322
#14 0x00007ff148e0ce3d in QGuiApplicationPrivate::processKeyEvent(QWindowSystemInterfacePrivate::KeyEvent*) (e=0x560c01121510) at kernel/qguiapplication.cpp:2228
#15 0x00007ff148e11db6 in QGuiApplicationPrivate::processWindowSystemEvent(QWindowSystemInterfacePrivate::WindowSystemEvent*) (e=e@entry=0x560c01121510) at kernel/qguiapplication.cpp:1843
#16 0x00007ff148deb75c in QWindowSystemInterface::sendWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1071
#17 0x00007ff148deb9d9 in QWindowSystemInterface::flushWindowSystemEvents(QFlags<QEventLoop::ProcessEventsFlag>) (flags=...) at kernel/qwindowsysteminterface.cpp:1035
#18 0x00007ff1427794de in QtWaylandClient::QWaylandWindow::setVisible(bool) () at /usr/lib/libQt5WaylandClient.so.5
#19 0x00007ff138d12bf5 in  () at /usr/lib/qt/plugins/wayland-graphics-integration-client/libqt-plugin-wayland-egl.so
#20 0x00007ff148e1c1ec in QWindowPrivate::setVisible(bool) (this=0x560c00ae8f50, visible=visible@entry=false) at kernel/qwindow.cpp:402
#21 0x00007ff14946555e in QWidgetWindow::setNativeWindowVisibility(bool) (this=this@entry=0x560c00e86c00, visible=visible@entry=false) at kernel/qwidgetwindow.cpp:205
#22 0x00007ff14943f130 in QWidgetPrivate::hide_sys() (this=this@entry=0x560c008e18d0) at kernel/qwidget.cpp:8256
#23 0x00007ff149446962 in QWidgetPrivate::hide_helper() (this=this@entry=0x560c008e18d0) at kernel/qwidget.cpp:8184
#24 0x00007ff14944b8e1 in QWidget::setVisible(bool) (this=0x560c00860600, visible=<optimized out>) at kernel/qwidget.cpp:8386
#25 0x00007ff149446ccb in QWidgetPrivate::close_helper(QWidgetPrivate::CloseMode) (mode=<optimized out>, this=0x560c008e18d0) at kernel/qwidget.cpp:8515
#26 0x00007ff149446ccb in QWidgetPrivate::close_helper(QWidgetPrivate::CloseMode) (this=0x560c008e18d0, mode=<optimized out>) at kernel/qwidget.cpp:8490
#27 0x00007ff14944745e in QWidget::~QWidget() (this=0x560c00860600, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1632
#28 0x00007ff149e43e55 in KMainWindow::~KMainWindow() () at /usr/lib/libKF5XmlGui.so.5
#29 0x0000560bfffa3c10 in KateMainWindow::~KateMainWindow() (this=this@entry=0x560c00860600, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /usr/include/c++/8.2.1/bits/atomic_base.h:303
#30 0x0000560bfffa3cf9 in KateMainWindow::~KateMainWindow() (this=0x560c00860600, __in_chrg=<optimized out>, __vtt_parm=<optimized out>) at /usr/src/debug/kate-18.12.3/kate/katemainwindow.cpp:186
#31 0x0000560bfff935e6 in KateApp::~KateApp() (this=0x7ffc24939f30, __in_chrg=<optimized out>) at /usr/include/qt/QtCore/qlist.h:75
#32 0x0000560bfff8d3bd in main(int, char**) (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kate-18.12.3/kate/main.cpp:637
[Inferior 1 (process 21177) detached]

Possible duplicates by query: bug 402267, bug 400653, bug 399704, bug 399617, bug 397298.

Reported using DrKonqi
Comment 1 Patrick Silva 2019-04-29 20:02:19 UTC
I can't reproduce this crash anymore.

Operating System: Arch Linux 
KDE Plasma Version: 5.15.4
KDE Frameworks Version: 5.57.0
Qt Version: 5.12.3