Bug 398064

Summary: Krita Assert when converting a shape to vector selection + Undo
Product: [Applications] krita Reporter: mvowada <freebox64>
Component: Tools/SelectionAssignee: Dmitry Kazakov <dimula73>
Status: RESOLVED FIXED    
Severity: normal CC: halla
Priority: NOR    
Version First Reported In: git master (please specify the git hash!)   
Target Milestone: ---   
Platform: Appimage   
OS: Linux   
Latest Commit: Version Fixed In:
Sentry Crash Report:
Attachments: Video

Description mvowada 2018-08-30 11:39:46 UTC
Created attachment 114702 [details]
Video

(Krita 4.2.0-pre-alpha (git 0ebf6d9) Appimage - Ubuntu 14.04)

"Select" > "Convert Shapes to Vector Selection" triggers an Assert (see video). 
Steps:

    1. draw a shape on a vector layer
    2. select the shape ("Select Shapes Tool")
    3. "Select" > "Convert Shapes to Vector Selection"
    4. Undo (CTRL+Z)

Actual Results: Assert
Comment 1 Halla Rempt 2018-08-30 11:43:16 UTC
This is the full backtrace:

Thread 1 (Thread 0x7f3411577cc0 (LWP 17222)):
[KCrash Handler]
#6  __GI_raise (sig=sig@entry=6) at ../sysdeps/unix/sysv/linux/raise.c:51
#7  0x00007f340d65e801 in __GI_abort () at abort.c:79
#8  0x00007f340e0355db in QMessageLogger::fatal(char const*, ...) const () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#9  0x00007f340f91511d in kis_assert_common (assertion=assertion@entry=0x7f340b4df591 "parentNode", file=file@entry=0x7f340b4df550 "/home/boud/dev/krita/libs/image/KisSelectionUpdateCompressor.cpp", line=line@entry=51, throwException=throwException@entry=false, isIgnorable=isIgnorable@entry=true) at /home/boud/dev/krita/libs/global/kis_assert.cpp:90
#10 0x00007f340f9154fd in kis_safe_assert_recoverable (assertion=assertion@entry=0x7f340b4df591 "parentNode", file=file@entry=0x7f340b4df550 "/home/boud/dev/krita/libs/image/KisSelectionUpdateCompressor.cpp", line=line@entry=51) at /home/boud/dev/krita/libs/global/kis_assert.cpp:108
#11 0x00007f340b376160 in KisSelectionUpdateCompressor::startUpdateJob (this=0x561d5f937070) at /home/boud/dev/krita/libs/image/KisSelectionUpdateCompressor.cpp:51
#12 0x00007f340e25fad5 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#13 0x00007f340e25fad5 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#14 0x00007f340e25fad5 in QMetaObject::activate(QObject*, int, int, void**) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#15 0x00007f340f9301c3 in KisRelaxedTimer::timerEvent (this=0x561d5aa747a0, event=<optimized out>) at /home/boud/dev/krita/libs/global/kis_relaxed_timer.cpp:100
#16 0x00007f340e2605fb in QObject::event(QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#17 0x00007f340efbde8c in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#18 0x00007f340efc545f in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Widgets.so.5
#19 0x00007f34109ca907 in KisApplication::notify (this=<optimized out>, receiver=0x561d5aa747a0, event=0x7ffdd08dba50) at /home/boud/dev/krita/libs/ui/KisApplication.cpp:610
#20 0x00007f340e230ab8 in QCoreApplication::notifyInternal2(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#21 0x00007f340e289f0e in QTimerInfoList::activateTimers() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#22 0x00007f340e28a709 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#23 0x00007f34056be287 in g_main_context_dispatch () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#24 0x00007f34056be4c0 in ?? () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#25 0x00007f34056be54c in g_main_context_iteration () from /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0
#26 0x00007f340e28aa7f in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#27 0x00007f33f7f4aed1 in ?? () from /usr/lib/x86_64-linux-gnu/libQt5XcbQpa.so.5
#28 0x00007f340e22edea in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#29 0x00007f340e237fa0 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQt5Core.so.5
#30 0x0000561d4cc4017a in main (argc=<optimized out>, argv=0x7ffdd08dbfa8) at /home/boud/dev/krita/krita/main.cc:435
Comment 2 Dmitry Kazakov 2018-09-13 14:20:22 UTC
The bug is fixed in 
https://phabricator.kde.org/R37:c42ce0564a74871ef243040c74c71f636b74cac1