Bug 423907 - Crash when closing the last document
Summary: Crash when closing the last document
Status: RESOLVED FIXED
Alias: None
Product: kate
Classification: Applications
Component: general (show other bugs)
Version: unspecified
Platform: Compiled Sources Linux
: NOR crash
Target Milestone: ---
Assignee: KWrite Developers
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2020-07-05 16:21 UTC by Aleix Pol
Modified: 2020-07-07 00:17 UTC (History)
2 users (show)

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 Aleix Pol 2020-07-05 16:21:11 UTC
Application: kate (20.07.70)
 (Compiled from sources)
Qt Version: 5.15.0
Frameworks Version: 5.72.0
Operating System: Linux 5.7.7-arch1-1 x86_64
Windowing system: Wayland
Distribution: "Arch Linux"

-- Information about the crash:
- What I was doing when the application crashed:
When I close the last document with Ctrl+W I get a crash.

- Custom settings of the application:
It's with self-compiled Qt+KF5 with debug symbols and such. Maybe others haven't hit it because of it.

The crash can be reproduced every time.

-- Backtrace:
Application: Kate (kate), signal: Aborted
Content of s_kcrashErrorMessage: (null)
[KCrash Handler]
#5  0x00007f91436a3355 in raise () from /usr/lib/libc.so.6
#6  0x00007f914368c853 in abort () from /usr/lib/libc.so.6
#7  0x00007f9143c40c51 in qt_message_fatal (message=<synthetic pointer>..., context=...) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/global/qlogging.cpp:1914
#8  QMessageLogger::fatal (this=this@entry=0x7ffcdfd214b8, msg=msg@entry=0x7f9143f3eea0 "ASSERT: \"%s\" in file %s, line %d") at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/global/qlogging.cpp:893
#9  0x00007f9143c4004a in qt_assert (assertion=<optimized out>, file=<optimized out>, line=<optimized out>) at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/global/qlogging.h:90
#10 0x000055a1cdf9574c in KateViewSpace::removeView (this=0x55a1d026b1b0, v=0x55a1d00952d0) at /home/apol/devel/frameworks/kate/kate/kateviewspace.cpp:235
#11 0x000055a1cdf8daf7 in KateViewManager::deleteView (this=0x55a1cff838b0, view=0x55a1d00952d0) at /home/apol/devel/frameworks/kate/kate/kateviewmanager.cpp:475
#12 0x000055a1cdf8e7a7 in KateViewManager::documentWillBeDeleted (this=0x55a1cff838b0, doc=0x55a1cfc320e0) at /home/apol/devel/frameworks/kate/kate/kateviewmanager.cpp:708
#13 0x000055a1cdf936d9 in QtPrivate::FunctorCall<QtPrivate::IndexesList<0>, QtPrivate::List<KTextEditor::Document*>, void, void (KateViewManager::*)(KTextEditor::Document*)>::call (f=(void (KateViewManager::*)(KateViewManager * const, KTextEditor::Document *)) 0x55a1cdf8e694 <KateViewManager::documentWillBeDeleted(KTextEditor::Document*)>, o=0x55a1cff838b0, arg=0x7ffcdfd21790) at /home/apol/devel/kde5/include/QtCore/qobjectdefs_impl.h:152
#14 0x000055a1cdf9323f in QtPrivate::FunctionPointer<void (KateViewManager::*)(KTextEditor::Document*)>::call<QtPrivate::List<KTextEditor::Document*>, void> (f=(void (KateViewManager::*)(KateViewManager * const, KTextEditor::Document *)) 0x55a1cdf8e694 <KateViewManager::documentWillBeDeleted(KTextEditor::Document*)>, o=0x55a1cff838b0, arg=0x7ffcdfd21790) at /home/apol/devel/kde5/include/QtCore/qobjectdefs_impl.h:185
#15 0x000055a1cdf92b22 in QtPrivate::QSlotObject<void (KateViewManager::*)(KTextEditor::Document*), QtPrivate::List<KTextEditor::Document*>, void>::impl (which=1, this_=0x55a1d0253100, r=0x55a1cff838b0, a=0x7ffcdfd21790, ret=0x0) at /home/apol/devel/kde5/include/QtCore/qobjectdefs_impl.h:418
#16 0x00007f9143e93f06 in QtPrivate::QSlotObjectBase::call (a=0x7ffcdfd21790, r=0x55a1cff838b0, this=0x55a1d0253100) at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:398
#17 doActivate<false> (sender=0x7ffcdfd222a8, signal_index=5, argv=0x7ffcdfd21790) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/kernel/qobject.cpp:3886
#18 0x000055a1cdf9e960 in KateDocManager::documentWillBeDeleted (this=0x7ffcdfd222a8, _t1=0x55a1cfc320e0) at kate/kate-lib_autogen/EWIEGA46WW/moc_katedocmanager.cpp:359
#19 0x000055a1cdf49f08 in KateDocManager::closeDocuments (this=0x7ffcdfd222a8, documents=..., closeUrl=true) at /home/apol/devel/frameworks/kate/kate/katedocmanager.cpp:256
#20 0x000055a1cdf4a0d3 in KateDocManager::closeDocument (this=0x7ffcdfd222a8, doc=0x55a1cfc320e0, closeUrl=true) at /home/apol/devel/frameworks/kate/kate/katedocmanager.cpp:290
#21 0x000055a1cdf8ce8d in KateViewManager::slotDocumentClose (this=0x55a1cff838b0, document=0x55a1cfc320e0) at /home/apol/devel/frameworks/kate/kate/kateviewmanager.cpp:276
#22 0x000055a1cdf8cf18 in KateViewManager::slotDocumentClose (this=0x55a1cff838b0) at /home/apol/devel/frameworks/kate/kate/kateviewmanager.cpp:288
#23 0x000055a1cdfa18e0 in KateViewManager::qt_static_metacall (_o=0x55a1cff838b0, _c=QMetaObject::InvokeMetaMethod, _id=7, _a=0x7ffcdfd21ab0) at kate/kate-lib_autogen/EWIEGA46WW/moc_kateviewmanager.cpp:242
#24 0x00007f9143e93f40 in doActivate<false> (sender=0x55a1d02a8b60, signal_index=4, argv=argv@entry=0x7ffcdfd21ab0) at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/kernel/qobjectdefs_impl.h:395
#25 0x00007f9143e8d260 in QMetaObject::activate (sender=sender@entry=0x55a1d02a8b60, m=m@entry=0x7f9145051160 <QAction::staticMetaObject>, local_signal_index=local_signal_index@entry=1, argv=argv@entry=0x7ffcdfd21ab0) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/kernel/qobject.cpp:3946
#26 0x00007f9144b52b22 in QAction::triggered (this=this@entry=0x55a1d02a8b60, _t1=<optimized out>) at .moc/moc_qaction.cpp:376
#27 0x00007f9144b55361 in QAction::activate (this=0x55a1d02a8b60, event=event@entry=QAction::Trigger) at /home/apol/devel/frameworks/qt5/qtbase/src/widgets/kernel/qaction.cpp:1161
#28 0x00007f9144b55f27 in QAction::event (e=<optimized out>, this=<optimized out>) at /home/apol/devel/frameworks/qt5/qtbase/src/widgets/kernel/qaction.cpp:1086
#29 QAction::event (this=<optimized out>, e=<optimized out>) at /home/apol/devel/frameworks/qt5/qtbase/src/widgets/kernel/qaction.cpp:1075
#30 0x00007f9144b5911f in QApplicationPrivate::notify_helper (this=<optimized out>, receiver=0x55a1d02a8b60, e=0x7ffcdfd21c90) at /home/apol/devel/frameworks/qt5/qtbase/src/widgets/kernel/qapplication.cpp:3671
#31 0x00007f9143e5da3a in QCoreApplication::notifyInternal2 (receiver=0x55a1d02a8b60, event=0x7ffcdfd21c90) at ../../include/QtCore/5.15.0/QtCore/private/../../../../../../../../devel/frameworks/qt5/qtbase/src/corelib/thread/qthread_p.h:325
#32 0x00007f914442f9bb in QShortcutMap::dispatchEvent (this=this@entry=0x55a1cfaad728, e=e@entry=0x7ffcdfd21d50) at /home/apol/devel/frameworks/qt5/qtbase/src/gui/kernel/qshortcutmap.cpp:675
#33 0x00007f914443037b in QShortcutMap::tryShortcut (this=this@entry=0x55a1cfaad728, e=e@entry=0x7ffcdfd21d50) at /home/apol/devel/frameworks/qt5/qtbase/src/gui/kernel/qshortcutmap.cpp:343
#34 0x00007f91443d9b9e in QWindowSystemInterface::handleShortcutEvent (window=0x7ffcdfd21d50, timestamp=1041901, keyCode=87, modifiers=..., nativeScanCode=25, nativeVirtualKey=119, nativeModifiers=4, text=..., autorepeat=false, count=1) at /home/apol/devel/frameworks/qt5/qtbase/src/gui/kernel/qwindowsysteminterface.cpp:478
#35 0x00007f91443fc40b in QGuiApplicationPrivate::processKeyEvent (e=0x55a1d073edb0) at /home/apol/devel/frameworks/qt5/qtbase/src/gui/kernel/qguiapplication.cpp:2327
#36 0x00007f91443d652b in QWindowSystemInterface::sendWindowSystemEvents (flags=...) at /home/apol/devel/frameworks/qt5/qtbase/src/gui/kernel/qwindowsysteminterface.cpp:1175
#37 0x00007f913f216840 in userEventSourceDispatch (source=<optimized out>) at /home/apol/devel/frameworks/qt5/qtbase/src/platformsupport/eventdispatchers/qeventdispatcher_glib.cpp:74
#38 0x00007f914032743c in g_main_context_dispatch () from /usr/lib/libglib-2.0.so.0
#39 0x00007f9140374fa9 in ?? () from /usr/lib/libglib-2.0.so.0
#40 0x00007f9140326221 in g_main_context_iteration () from /usr/lib/libglib-2.0.so.0
#41 0x00007f9143eb4e7f in QEventDispatcherGlib::processEvents (this=0x55a1cfb35a50, flags=...) at /home/apol/devel/frameworks/qt5/qtbase/src/corelib/kernel/qeventdispatcher_glib.cpp:423
#42 0x00007f9143e5c3fb in QEventLoop::exec (this=this@entry=0x7ffcdfd22090, flags=..., flags@entry=...) at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/global/qflags.h:141
#43 0x00007f9143e64660 in QCoreApplication::exec () at ../../include/QtCore/../../../../../devel/frameworks/qt5/qtbase/src/corelib/global/qflags.h:121
#44 0x000055a1cdf3e117 in main (argc=1, argv=0x7ffcdfd22498) at /home/apol/devel/frameworks/kate/kate/main.cpp:638
[Inferior 1 (process 2992) detached]

Possible duplicates by query: bug 423132, bug 417285, bug 416315, bug 414922, bug 413943.

Reported using DrKonqi
Comment 1 Christoph Cullmann 2020-07-06 05:26:56 UTC
Does the commit

https://invent.kde.org/utilities/kate/commit/9f34bd8f262c434113ca118a81a2eb01ca941160

solve this?
Comment 2 Aleix Pol 2020-07-07 00:17:40 UTC
Yes, thanks!