Bug 405834 - Kate crashes in when I Alt+Tab back to it [Symbol Viewer plugin]
Summary: Kate crashes in when I Alt+Tab back to it [Symbol Viewer plugin]
Status: RESOLVED FIXED
Alias: None
Product: kate
Classification: Applications
Component: general (show other bugs)
Version: 18.12.2
Platform: Fedora RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2019-03-24 20:28 UTC by Markus Laker
Modified: 2019-07-13 21:39 UTC (History)
1 user (show)

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


Attachments
New crash information added by DrKonqi (11.95 KB, text/plain)
2019-03-24 21:06 UTC, Markus Laker
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Markus Laker 2019-03-24 20:28:55 UTC
Application: kate (18.12.2)

Qt Version: 5.11.3
Frameworks Version: 5.55.0
Operating System: Linux 4.20.16-200.fc29.x86_64 x86_64
Distribution (Platform): Fedora RPMs

-- Information about the crash:
- What I was doing when the application crashed:

I was setting up the CTags extension for the first time.  I pressed F1 to read the help page for the extension.  When I Alt+Tabbed back to kate, kate crashed.

- Unusual behavior I noticed:

Shortly before the crash, when I typed symbol names into the CTags extension's search box on the first tab, they were resolved very slowly or not at all.

- Custom settings of the application:

I had selected the Breeze Dark schema and enabled the Build, CTags, Open Header, GDB, Snippets Tool View, Symbol Viewer and Terminal Tool View extensions.

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

Thread 5 (Thread 0x7fcc6a8df700 (LWP 2466)):
#0  0x00007fcc83eb873c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fcc6b2548a3 in ?? () from /usr/lib64/dri/swrast_dri.so
#2  0x00007fcc6b25438b in ?? () from /usr/lib64/dri/swrast_dri.so
#3  0x00007fcc83eb258e in start_thread () from /lib64/libpthread.so.0
#4  0x00007fcc847926a3 in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fcc6b0e0700 (LWP 2465)):
#0  0x00007fcc83eb873c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fcc6b2548a3 in ?? () from /usr/lib64/dri/swrast_dri.so
#2  0x00007fcc6b25438b in ?? () from /usr/lib64/dri/swrast_dri.so
#3  0x00007fcc83eb258e in start_thread () from /lib64/libpthread.so.0
#4  0x00007fcc847926a3 in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fcc721c9700 (LWP 2461)):
#0  0x00007fcc84787421 in poll () from /lib64/libc.so.6
#1  0x00007fcc8160a3a6 in ?? () from /lib64/libglib-2.0.so.0
#2  0x00007fcc8160a4d0 in g_main_context_iteration () from /lib64/libglib-2.0.so.0
#3  0x00007fcc84e345ab in QEventDispatcherGlib::processEvents (this=0x7fcc64000b20, flags=...) at kernel/qeventdispatcher_glib.cpp:424
#4  0x00007fcc84de2e0b in QEventLoop::exec (this=this@entry=0x7fcc721c8bf0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#5  0x00007fcc84c4ae86 in QThread::exec (this=this@entry=0x7fcc85107060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#6  0x00007fcc8508bf89 in QDBusConnectionManager::run (this=0x7fcc85107060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at qdbusconnection.cpp:178
#7  0x00007fcc84c542fb in QThreadPrivate::start (arg=0x7fcc85107060 <(anonymous namespace)::Q_QGS__q_manager::innerFunction()::holder>) at thread/qthread_unix.cpp:367
#8  0x00007fcc83eb258e in start_thread () from /lib64/libpthread.so.0
#9  0x00007fcc847926a3 in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fcc737b2700 (LWP 2459)):
#0  0x00007fcc84787421 in poll () from /lib64/libc.so.6
#1  0x00007fcc8384339f in ?? () from /lib64/libxcb.so.1
#2  0x00007fcc8384501a in xcb_wait_for_event () from /lib64/libxcb.so.1
#3  0x00007fcc7397abf9 in QXcbEventReader::run (this=0x5561ac47b1c0) at qxcbconnection.h:409
#4  0x00007fcc84c542fb in QThreadPrivate::start (arg=0x5561ac47b1c0) at thread/qthread_unix.cpp:367
#5  0x00007fcc83eb258e in start_thread () from /lib64/libpthread.so.0
#6  0x00007fcc847926a3 in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fcc80a79400 (LWP 2457)):
[KCrash Handler]
#6  QAction::setChecked (this=0x5561ad691650, b=false) at kernel/qaction.cpp:975
#7  0x00007fcc706056b5 in KatePluginSymbolViewer::applyConfig (this=0x5561acb34a70, p=0x5561afaf34e0) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/addons/symbolviewer/plugin_katesymbolviewer.cpp:416
#8  0x00007fcc84e0c1c3 in QtPrivate::QSlotObjectBase::call (a=0x7ffe99388db0, r=0x5561acb34a70, this=0x5561b099c3a0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:376
#9  QMetaObject::activate (sender=0x5561afaf34e0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3754
#10 0x00007fcc70605ef3 in KatePluginSymbolViewerConfigPage::configPageApplyRequest (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/x86_64-redhat-linux-gnu/addons/symbolviewer/katesymbolviewerplugin_autogen/EWIEGA46WW/moc_plugin_katesymbolviewer.cpp:159
#11 0x00005561ab2033d6 in KateConfigDialog::slotApply (this=0x7fcc6c02fa20) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/kate/kateconfigdialog.cpp:357
#12 0x00007fcc84e0c1c3 in QtPrivate::QSlotObjectBase::call (a=0x7ffe99388f10, r=0x7fcc6c02fa20, this=0x5561afbe8dc0) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:376
#13 QMetaObject::activate (sender=0x7fcc6c02fa20, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3754
#14 0x00007fcc84e0c1c3 in QtPrivate::QSlotObjectBase::call (a=0x7ffe99388ff0, r=0x7fcc6c02fa20, this=0x5561ad75e180) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:376
#15 QMetaObject::activate (sender=0x5561aff430e0, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3754
#16 0x00007fcc859d3d60 in QDialogButtonBoxPrivate::_q_handleButtonClicked (this=<optimized out>) at widgets/qdialogbuttonbox.cpp:864
#17 0x00007fcc84e0c09e in QMetaObject::activate (sender=0x5561afb9d590, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3771
#18 0x00007fcc859315b6 in QAbstractButton::clicked (this=this@entry=0x5561afb9d590, _t1=<optimized out>) at .moc/moc_qabstractbutton.cpp:308
#19 0x00007fcc859317de in QAbstractButtonPrivate::emitClicked (this=0x5561af8e82b0) at widgets/qabstractbutton.cpp:414
#20 0x00007fcc85932c33 in QAbstractButtonPrivate::click (this=0x5561af8e82b0) at widgets/qabstractbutton.cpp:407
#21 0x00007fcc85932e05 in QAbstractButton::mouseReleaseEvent (this=0x5561afb9d590, e=0x7ffe993895f0) at widgets/qabstractbutton.cpp:1011
#22 0x00007fcc85888378 in QWidget::event (this=0x5561afb9d590, event=0x7ffe993895f0) at kernel/qwidget.cpp:8925
#23 0x00007fcc85849285 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5561afb9d590, e=0x7ffe993895f0) at kernel/qapplication.cpp:3726
#24 0x00007fcc85850be8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3202
#25 0x00007fcc84de3ec6 in QCoreApplication::notifyInternal2 (receiver=0x5561afb9d590, event=0x7ffe993895f0) at kernel/qcoreapplication.cpp:1047
#26 0x00007fcc8584fedd in QApplicationPrivate::sendMouseEvent (receiver=0x5561afb9d590, event=0x7ffe993895f0, alienWidget=0x5561afb9d590, nativeWidget=0x7fcc6c02fa20, buttonDown=0x7fcc85d50310 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#27 0x00007fcc858a3118 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () at /usr/include/c++/8/bits/atomic_base.h:390
#28 0x00007fcc858a5cbe in QWidgetWindow::event (this=0x7fcc6c00d0d0, event=0x7ffe993899d0) at kernel/qwidgetwindow.cpp:281
#29 0x00007fcc85849285 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x7fcc6c00d0d0, e=0x7ffe993899d0) at kernel/qapplication.cpp:3726
#30 0x00007fcc858509a0 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3485
#31 0x00007fcc84de3ec6 in QCoreApplication::notifyInternal2 (receiver=0x7fcc6c00d0d0, event=0x7ffe993899d0) at kernel/qcoreapplication.cpp:1047
#32 0x00007fcc852fa4d3 in QGuiApplicationPrivate::processMouseEvent (e=0x5561b085df80) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237
#33 0x00007fcc852fc5d5 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x5561b085df80) at kernel/qguiapplication.cpp:1817
#34 0x00007fcc852d770b in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1032
#35 0x00007fcc73a0e85f in QPAEventDispatcherGlib::processEvents (this=0x5561ac4da7c0, flags=...) at qeventdispatcher_glib.cpp:70
#36 0x00007fcc84de2e0b in QEventLoop::exec (this=this@entry=0x7ffe99389c50, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#37 0x00007fcc85a3a81d in QDialog::exec (this=0x7fcc6c02fa20) at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#38 0x00005561ab1c09bf in KateMainWindow::showPluginConfigPage (id=0, configpageinterface=0x0, this=0x5561ac6c46a0) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/kate/katemainwindow.cpp:796
#39 KateMainWindow::showPluginConfigPage (this=0x5561ac6c46a0, configpageinterface=0x0, id=0) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/kate/katemainwindow.cpp:785
#40 0x00005561ab1fbae3 in KateMainWindow::qt_static_metacall (_o=0x5561ac6c46a0, _c=<optimized out>, _id=<optimized out>, _a=0x7ffe99389e50) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/x86_64-redhat-linux-gnu/kate/kdeinit_kate_autogen/EWIEGA46WW/moc_katemainwindow.cpp:400
#41 0x00007fcc84e0c09e in QMetaObject::activate (sender=0x5561ac8b2230, signalOffset=<optimized out>, local_signal_index=<optimized out>, argv=<optimized out>) at kernel/qobject.cpp:3771
#42 0x00007fcc85842a36 in QAction::triggered (this=this@entry=0x5561ac8b2230, _t1=<optimized out>) at .moc/moc_qaction.cpp:376
#43 0x00007fcc85845100 in QAction::activate (this=0x5561ac8b2230, event=<optimized out>) at kernel/qaction.cpp:1166
#44 0x00007fcc859ba11c in QMenuPrivate::activateCausedStack (this=this@entry=0x5561ac9995e0, causedStack=..., action=action@entry=0x5561ac8b2230, action_e=action_e@entry=QAction::Trigger, self=self@entry=true) at widgets/qmenu.cpp:1371
#45 0x00007fcc859c17c4 in QMenuPrivate::activateAction (this=this@entry=0x5561ac9995e0, action=action@entry=0x5561ac8b2230, action_e=action_e@entry=QAction::Trigger, self=self@entry=true) at widgets/qmenu.cpp:1448
#46 0x00007fcc859c280b in QMenu::mouseReleaseEvent (this=<optimized out>, e=0x7ffe9938a450) at widgets/qmenu.cpp:2942
#47 0x00007fcc85888378 in QWidget::event (this=this@entry=0x5561ac9991d0, event=event@entry=0x7ffe9938a450) at kernel/qwidget.cpp:8925
#48 0x00007fcc859c4ebb in QMenu::event (this=0x5561ac9991d0, e=0x7ffe9938a450) at widgets/qmenu.cpp:3064
#49 0x00007fcc85849285 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5561ac9991d0, e=0x7ffe9938a450) at kernel/qapplication.cpp:3726
#50 0x00007fcc85850be8 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3202
#51 0x00007fcc84de3ec6 in QCoreApplication::notifyInternal2 (receiver=0x5561ac9991d0, event=0x7ffe9938a450) at kernel/qcoreapplication.cpp:1047
#52 0x00007fcc8584fedd in QApplicationPrivate::sendMouseEvent (receiver=0x5561ac9991d0, event=0x7ffe9938a450, alienWidget=0x0, nativeWidget=0x5561ac9991d0, buttonDown=0x7fcc85d50310 <qt_button_down>, lastMouseReceiver=..., spontaneous=true) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:234
#53 0x00007fcc858a34d3 in QWidgetWindow::handleMouseEvent(QMouseEvent*) () at kernel/qwidgetwindow.cpp:556
#54 0x00007fcc858a5cbe in QWidgetWindow::event (this=0x5561ad4b02a0, event=0x7ffe9938a830) at kernel/qwidgetwindow.cpp:281
#55 0x00007fcc85849285 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5561ad4b02a0, e=0x7ffe9938a830) at kernel/qapplication.cpp:3726
#56 0x00007fcc858509a0 in QApplication::notify(QObject*, QEvent*) () at kernel/qapplication.cpp:3485
#57 0x00007fcc84de3ec6 in QCoreApplication::notifyInternal2 (receiver=0x5561ad4b02a0, event=0x7ffe9938a830) at kernel/qcoreapplication.cpp:1047
#58 0x00007fcc852fa4d3 in QGuiApplicationPrivate::processMouseEvent (e=0x5561acd43720) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:237
#59 0x00007fcc852fc5d5 in QGuiApplicationPrivate::processWindowSystemEvent (e=0x5561acd43720) at kernel/qguiapplication.cpp:1817
#60 0x00007fcc852d770b in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at kernel/qwindowsysteminterface.cpp:1032
#61 0x00007fcc73a0e85f in QPAEventDispatcherGlib::processEvents (this=0x5561ac4da7c0, flags=...) at qeventdispatcher_glib.cpp:70
#62 0x00007fcc84de2e0b in QEventLoop::exec (this=this@entry=0x7ffe9938aab0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:140
#63 0x00007fcc84deaed6 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:120
#64 0x00005561ab1b071b in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/kate/main.cpp:637
[Inferior 1 (process 2457) detached]

Reported using DrKonqi
Comment 1 Markus Laker 2019-03-24 21:06:36 UTC
Created attachment 119009 [details]
New crash information added by DrKonqi

kate (18.12.2) using Qt 5.11.3

(I don't think this bug report is a duplicate.)

- What I was doing when the application crashed:

I went into the settings page for the Symbol Viewer extension and enabled the option to display function arguments.  I clicked OK.  Kate crashed.

- Custom settings of the application:

The Symbol Viewer extension is enabled.  This isn't the default setting, at least on Fedora 29.

-- Backtrace (Reduced):
#6  QAction::setChecked (this=0x55f9fc0c9500, b=true) at kernel/qaction.cpp:975
#7  0x00007f2a49f2567b in KatePluginSymbolViewer::applyConfig (this=0x55f9fb662f70, p=0x55f9fb744070) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/addons/symbolviewer/plugin_katesymbolviewer.cpp:414
#8  0x00007f2a627211c3 in QtPrivate::QSlotObjectBase::call (a=0x7ffd16fe4f10, r=0x55f9fb662f70, this=0x55f9fbb84460) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:376
[...]
#10 0x00007f2a49f25ef3 in KatePluginSymbolViewerConfigPage::configPageApplyRequest (this=<optimized out>, _t1=<optimized out>) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/x86_64-redhat-linux-gnu/addons/symbolviewer/katesymbolviewerplugin_autogen/EWIEGA46WW/moc_plugin_katesymbolviewer.cpp:159
#11 0x000055f9f99e33d6 in KateConfigDialog::slotApply (this=0x55f9fc10d530) at /usr/src/debug/kate-18.12.2-1.fc29.x86_64/kate/kateconfigdialog.cpp:357
Comment 2 Christoph Cullmann 2019-07-13 21:39:54 UTC
Git commit fc019f9184e519e654332193193bee427b8ac42a by Christoph Cullmann.
Committed on 13/07/2019 at 21:39.
Pushed by cullmann into branch 'master'.

fix symbols viewer plugin for multiple main windows

M  +15   -10   addons/symbolviewer/plugin_katesymbolviewer.cpp
M  +5    -1    addons/symbolviewer/plugin_katesymbolviewer.h

https://commits.kde.org/kate/fc019f9184e519e654332193193bee427b8ac42a