Bug 452051 - Restarting All LSP Servers crashes the system
Summary: Restarting All LSP Servers crashes the system
Status: RESOLVED FIXED
Alias: None
Product: kate
Classification: Applications
Component: general (show other bugs)
Version: 21.12.3
Platform: Arch Linux Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2022-03-29 20:16 UTC by Nowshed H. Imran
Modified: 2022-04-23 14:10 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In: 22.04


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Nowshed H. Imran 2022-03-29 20:16:59 UTC
Application: kate (21.12.3)

Qt Version: 5.15.3
Frameworks Version: 5.92.0
Operating System: Linux 5.16.16-arch1-1 x86_64
Windowing System: X11
Distribution: Arch Linux
DrKonqi: 5.24.3 [KCrashBackend]

-- Information about the crash:
- What I was doing when the application crashed:
I was editing a simple C program file. Inside the file, following codes were included.

#include <stdio.h>

int main()
{
    printf("The ranting above is unbearable\n");
    return 0;
}

The crash can be reproduced every time.

-- Backtrace:
Application: Kate (kate), signal: Segmentation fault
Content of s_kcrashErrorMessage: {_M_t = {<std::__uniq_ptr_impl<char, std::default_delete<char []> >> = {_M_t = std::tuple containing = {[1] = 0x0, [2] = {<No data fields>}}}, <No data fields>}}
[KCrash Handler]
#6  0x00007f9d44098a7c in QSharedPointer<LSPClientServer>::data (this=<optimized out>, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:301
#7  QSharedPointer<LSPClientServer>::operator-> (this=<optimized out>, this=<optimized out>) at /usr/include/qt/QtCore/qsharedpointer_impl.h:307
#8  LSPClientServerManagerImpl::restart(QVector<QSharedPointer<LSPClientServer> > const&, bool)::{lambda(int, int)#1}::operator()(int, int) const (k=-1, t=-1, __closure=0x7fff49d52368) at /usr/src/debug/kate-21.12.3/addons/lspclient/lspclientservermanager.cpp:450
#9  LSPClientServerManagerImpl::restart (this=this@entry=0x5608b97e6c50, servers=..., reload=reload@entry=true) at /usr/src/debug/kate-21.12.3/addons/lspclient/lspclientservermanager.cpp:455
#10 0x00007f9d440990af in LSPClientServerManagerImpl::restart (this=<optimized out>, server=<optimized out>) at /usr/src/debug/kate-21.12.3/addons/lspclient/lspclientservermanager.cpp:397
#11 0x00007f9d4b4a7463 in QtPrivate::QSlotObjectBase::call (a=<optimized out>, r=<optimized out>, this=<optimized out>, this=<optimized out>, r=<optimized out>, a=<optimized out>) at ../../include/QtCore/../../src/corelib/kernel/qobjectdefs_impl.h:398
#12 doActivate<false> (sender=0x5608b981cc50, signal_index=4, argv=0x7fff49d52540) at kernel/qobject.cpp:3886
#13 0x00007f9d4bf1d417 in QAction::triggered (this=this@entry=0x5608b981cc50, _t1=<optimized out>) at .moc/moc_qaction.cpp:376
#14 0x00007f9d4bf22ee0 in QAction::activate (this=0x5608b981cc50, event=<optimized out>) at kernel/qaction.cpp:1161
#15 0x00007f9d4c0a54c3 in QMenuPrivate::activateCausedStack (this=this@entry=0x5608b9841710, causedStack=..., action=action@entry=0x5608b981cc50, action_e=action_e@entry=QAction::Trigger, self=self@entry=true) at widgets/qmenu.cpp:1384
#16 0x00007f9d4c0a55a1 in QMenuPrivate::activateAction (this=0x5608b9841710, action=0x5608b981cc50, action_e=QAction::Trigger, self=<optimized out>) at widgets/qmenu.cpp:1461
#17 0x00007f9d4bf603d6 in QWidget::event (this=0x5608b98416d0, event=0x7fff49d52b50) at kernel/qwidget.cpp:8659
#18 0x00007f9d4bf2a1c6 in QApplicationPrivate::notify_helper (this=this@entry=0x5608b90c8610, receiver=receiver@entry=0x5608b98416d0, e=e@entry=0x7fff49d52b50) at kernel/qapplication.cpp:3637
#19 0x00007f9d4bf2eff7 in QApplication::notify (this=0x7fff49d527e0, receiver=0x5608b98416d0, e=0x7fff49d52b50) at kernel/qapplication.cpp:3081
#20 0x00007f9d4b4765aa in QCoreApplication::notifyInternal2 (receiver=0x5608b98416d0, event=0x7fff49d52b50) at kernel/qcoreapplication.cpp:1064
#21 0x00007f9d4bf2d9bf in QApplicationPrivate::sendMouseEvent (receiver=0x5608b98416d0, event=0x7fff49d52b50, alienWidget=0x0, nativeWidget=0x5608b98416d0, buttonDown=<optimized out>, lastMouseReceiver=..., spontaneous=true, onlyDispatchEnterLeave=false) at kernel/qapplication.cpp:2619
#22 0x00007f9d4bf7f453 in QWidgetWindow::handleMouseEvent (this=0x5608ba452810, event=0x7fff49d52ec0) at kernel/qwidgetwindow.cpp:580
#23 0x00007f9d4bf804ec in QWidgetWindow::event (this=0x5608ba452810, event=0x7fff49d52ec0) at kernel/qwidgetwindow.cpp:300
#24 0x00007f9d4bf2a1c6 in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x5608ba452810, e=0x7fff49d52ec0) at kernel/qapplication.cpp:3637
#25 0x00007f9d4b4765aa in QCoreApplication::notifyInternal2 (receiver=0x5608ba452810, event=0x7fff49d52ec0) at kernel/qcoreapplication.cpp:1064
#26 0x00007f9d4b84b230 in QGuiApplicationPrivate::processMouseEvent (e=0x5608b98180f0) at kernel/qguiapplication.cpp:2282
#27 0x00007f9d4b8366e5 in QWindowSystemInterface::sendWindowSystemEvents (flags=flags@entry=...) at kernel/qwindowsysteminterface.cpp:1169
#28 0x00007f9d46289f60 in xcbSourceDispatch (source=<optimized out>) at /usr/src/debug/qtbase/src/plugins/platforms/xcb/qxcbeventdispatcher.cpp:105
#29 0x00007f9d49760163 in g_main_dispatch (context=0x7f9d40005010) at ../glib/glib/gmain.c:3417
#30 g_main_context_dispatch (context=0x7f9d40005010) at ../glib/glib/gmain.c:4135
#31 0x00007f9d497b69e9 in g_main_context_iterate.constprop.0 (context=context@entry=0x7f9d40005010, block=block@entry=1, dispatch=dispatch@entry=1, self=<optimized out>) at ../glib/glib/gmain.c:4211
#32 0x00007f9d4975d6c5 in g_main_context_iteration (context=0x7f9d40005010, may_block=1) at ../glib/glib/gmain.c:4276
#33 0x00007f9d4b4c257a in QEventDispatcherGlib::processEvents (this=0x5608b91a0620, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#34 0x00007f9d4b46e88b in QEventLoop::exec (this=0x7fff49d53250, flags=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#35 0x00007f9d4b479fd7 in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#36 0x00007f9d4b846432 in QGuiApplication::exec () at kernel/qguiapplication.cpp:1867
#37 0x00007f9d4bf2854a in QApplication::exec () at kernel/qapplication.cpp:2829
#38 0x00005608b73c9a30 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/kate-21.12.3/kate/main.cpp:700
[Inferior 1 (process 13980) detached]

Reported using DrKonqi
Comment 1 Eric Armbruster 2022-04-23 14:10:40 UTC
Fixed by Mark Nauwelaerts with https://invent.kde.org/utilities/kate/-/commit/af7cd57f7790238536566f432df96b65963da63a