Bug 496257 - Crash when quitting
Summary: Crash when quitting
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: 5.2.6
Platform: openSUSE Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2024-11-14 08:53 UTC by Grósz Dániel
Modified: 2024-11-14 14:02 UTC (History)
1 user (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 Grósz Dániel 2024-11-14 08:53:40 UTC
SUMMARY
I created a new file, drew a little with the calligraphy tool to test a graphic tablet, then quit, and opted to discard the file. Then Krita crashed while quitting.

In a few tries I couldn't reproduce it.

SOFTWARE/OS VERSIONS
Operating System: openSUSE Tumbleweed 20241112
KDE Plasma Version: 6.2.3
KDE Frameworks Version: 6.8.0
Qt Version: 6.8.0
Kernel Version: 6.11.5-1-default (64-bit)
Graphics Platform: X11

BACKTRACE
Application: Krita (krita), signal: Segmentation fault

[KCrash Handler]
#4  KisCanvas2::globalShapeManager (this=0x0) at /usr/src/debug/krita-5.2.6/libs/ui/canvas/kis_canvas2.cpp:462
#5  0x00007f31ae2c4ec8 in KisSelectionManager::shapeSelectionChanged (this=0x564b666357c8) at /usr/src/debug/krita-5.2.6/libs/ui/kis_selection_manager.cc:557
#6  0x00007f31ac535672 in doActivate<false> (sender=0x564b6bb94028, signal_index=6, argv=0x7ffcdc72abb0) at kernel/qobject.cpp:3937
#7  0x00007f31ac535672 in doActivate<false> (sender=0x564b6d795900, signal_index=3, argv=0x7ffcdc72ac80) at kernel/qobject.cpp:3937
#8  0x00007f31ac535672 in doActivate<false> (sender=0x564b6d9ad3d0, signal_index=3, argv=0x7ffcdc72ad50) at kernel/qobject.cpp:3937
#9  0x00007f31ac535672 in doActivate<false> (sender=0x564b6d7b8440, signal_index=3, argv=0x7ffcdc72ae20) at kernel/qobject.cpp:3937
#10 0x00007f31ac535672 in doActivate<false> (sender=0x564b6d79f060, signal_index=3, argv=0x7ffcdc72aef0) at kernel/qobject.cpp:3937
#11 0x00007f31addc6e15 in KisSignalCompressor::tryEmitSignalSafely (this=this@entry=0x564b6d79f060) at /usr/src/debug/krita-5.2.6/libs/global/kis_signal_compressor.cpp:195
#12 0x00007f31addcc565 in KisSignalCompressor::tryEmitOnTick (this=this@entry=0x564b6d79f060, isFromTimer=isFromTimer@entry=false) at /usr/src/debug/krita-5.2.6/libs/global/kis_signal_compressor.cpp:172
#13 0x00007f31addcc643 in KisSignalCompressor::start (this=0x564b6d79f060) at /usr/src/debug/krita-5.2.6/libs/global/kis_signal_compressor.cpp:138
#14 0x00007f31ac535672 in doActivate<false> (sender=0x564b6d7b8440, signal_index=4, argv=0x7ffcdc72b010) at kernel/qobject.cpp:3937
#15 0x00007f31ab6c19c1 in KoSelection::select (this=this@entry=0x564b6d9ad3d0, shape=<optimized out>) at /usr/src/debug/krita-5.2.6/libs/flake/KoSelection.cpp:107
#16 0x00007f31850d142b in KarbonCalligraphyTool::deactivate (this=0x564b6bc741e0) at /usr/src/debug/krita-5.2.6/plugins/tools/karbonplugins/tools/CalligraphyTool/KarbonCalligraphyTool.cpp:374
#17 0x00007f31ab6ea472 in KoToolManager::Private::disconnectActiveTool (this=this@entry=0x564b6615ffe0) at /usr/src/debug/krita-5.2.6/libs/flake/KoToolManager.cpp:458
#18 0x00007f31ab6ef42b in KoToolManager::Private::detachCanvas (this=0x564b6615ffe0, controller=<optimized out>) at /usr/src/debug/krita-5.2.6/libs/flake/KoToolManager.cpp:637
#19 0x00007f31ab6ef582 in KoToolManager::removeCanvasController (this=<optimized out>, controller=<optimized out>) at /usr/src/debug/krita-5.2.6/libs/flake/KoToolManager.cpp:250
#20 0x00007f31ae4fd4c8 in KisView::~KisView (this=0x564b6bb5b7e0, this=<optimized out>) at /usr/src/debug/krita-5.2.6/libs/ui/KisView.cpp:279
#21 0x00007f31ae4fd759 in KisView::~KisView (this=0x564b6bb5b7e0, this=<optimized out>) at /usr/src/debug/krita-5.2.6/libs/ui/KisView.cpp:284
#22 0x00007f31ac5267fe in QObjectPrivate::deleteChildren (this=this@entry=0x564b66aa7400) at kernel/qobject.cpp:2137
#23 0x00007f31ad1e2170 in QWidget::~QWidget (this=0x564b6bb5d330, __in_chrg=<optimized out>) at kernel/qwidget.cpp:1524
#24 0x00007f31ad324b09 in QMdiSubWindow::~QMdiSubWindow (this=0x564b6bb5d330, __in_chrg=<optimized out>) at widgets/qmdisubwindow.cpp:2282
#25 0x00007f31ac528ad5 in QObject::event (this=0x564b6bb5d330, e=0x564b6bbe7f80) at kernel/qobject.cpp:1334
#26 0x00007f31ad1a522e in QApplicationPrivate::notify_helper (this=this@entry=0x564b6bb5b7e0, receiver=0x564b6bb5d330, receiver@entry=0x0, e=0x564b6bbe7f80, e@entry=0x698dfd5d0bca4800) at kernel/qapplication.cpp:3640
#27 0x00007f31ad1ac1db in QApplication::notify (this=this@entry=0x7ffcdc72b990, receiver=0x0, receiver@entry=0x564b6bb5d330, e=0x698dfd5d0bca4800, e@entry=0x564b6bbe7f80) at kernel/qapplication.cpp:3386
#28 0x00007f31ae49b32e in KisApplication::notify (this=0x7ffcdc72b990, receiver=0x564b6bb5d330, event=0x564b6bbe7f80) at /usr/src/debug/krita-5.2.6/libs/ui/KisApplication.cpp:771
#29 0x00007f31ac4fc188 in QCoreApplication::notifyInternal2 (receiver=0x564b6bb5d330, event=0x564b6bbe7f80) at kernel/qcoreapplication.cpp:1064
#30 0x00007f31ac4fc35e in QCoreApplication::sendEvent (receiver=<optimized out>, event=<optimized out>) at kernel/qcoreapplication.cpp:1462
#31 0x00007f31ac4ff589 in QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x564b6343c050) at kernel/qcoreapplication.cpp:1821
#32 0x00007f31ac4ffa18 in QCoreApplication::sendPostedEvents (receiver=<optimized out>, event_type=<optimized out>) at kernel/qcoreapplication.cpp:1680
#33 0x00007f31ac557703 in postEventSourceDispatch (s=0x564b63809ef0) at kernel/qeventdispatcher_glib.cpp:277
#34 0x00007f31a9910eb8 in ??? () at /lib64/libglib-2.0.so.0
#35 0x00007f31a9912ca8 in ??? () at /lib64/libglib-2.0.so.0
#36 0x00007f31a99134bc in g_main_context_iteration () at /lib64/libglib-2.0.so.0
#37 0x00007f31ac556ef9 in QEventDispatcherGlib::processEvents (this=0x564b63493cd0, flags=...) at kernel/qeventdispatcher_glib.cpp:423
#38 0x00007f31ac4fab82 in QEventLoop::exec (this=this@entry=0x7ffcdc72b7b0, flags=..., flags@entry=...) at ../../include/QtCore/../../src/corelib/global/qflags.h:69
#39 0x00007f31ac5032be in QCoreApplication::exec () at ../../include/QtCore/../../src/corelib/global/qflags.h:121
#40 0x00007f31ac97577c in QGuiApplication::exec () at kernel/qguiapplication.cpp:1870
#41 0x00007f31ad1a51a5 in QApplication::exec () at kernel/qapplication.cpp:2832
#42 0x0000564b46482820 in main (argc=<optimized out>, argv=<optimized out>) at /usr/src/debug/krita-5.2.6/krita/main.cc:792
[Inferior 1 (process 1271469) detached]
Comment 1 Dmitry Kazakov 2024-11-14 09:53:17 UTC
Hi, Grósz!

Thank you for the report! I can reproduce the issue!

It is important to first select the painted shape with a shape selection tool, then switch back to the calligraphy tool, then close Krita.
Comment 2 Dmitry Kazakov 2024-11-14 14:01:58 UTC
Git commit 051b1f619421e9b390e006039d1bb6325467452f by Dmitry Kazakov.
Committed on 14/11/2024 at 14:01.
Pushed by dkazakov into branch 'krita/5.2'.

Fix crash when closing Krita while Calligraphy Tool is active

m_lastShape is not used anymore, so we can just ignore it.

M  +0    -9    plugins/tools/karbonplugins/tools/CalligraphyTool/KarbonCalligraphyTool.cpp
M  +0    -3    plugins/tools/karbonplugins/tools/CalligraphyTool/KarbonCalligraphyTool.h

https://invent.kde.org/graphics/krita/-/commit/051b1f619421e9b390e006039d1bb6325467452f
Comment 3 Dmitry Kazakov 2024-11-14 14:02:18 UTC
Git commit b9cba02f669578a6e36985a7d8edd3a6b13004fe by Dmitry Kazakov.
Committed on 14/11/2024 at 14:02.
Pushed by dkazakov into branch 'master'.

Fix crash when closing Krita while Calligraphy Tool is active

m_lastShape is not used anymore, so we can just ignore it.

M  +0    -9    plugins/tools/karbonplugins/tools/CalligraphyTool/KarbonCalligraphyTool.cpp
M  +0    -3    plugins/tools/karbonplugins/tools/CalligraphyTool/KarbonCalligraphyTool.h

https://invent.kde.org/graphics/krita/-/commit/b9cba02f669578a6e36985a7d8edd3a6b13004fe