Bug 352301

Summary: Assert when undoing a contiguous selection
Product: [Applications] krita Reporter: Halla Rempt <halla>
Component: Tile managerAssignee: Krita Bugs <krita-bugs-null>
Status: RESOLVED FIXED    
Severity: normal    
Priority: NOR    
Version First Reported In: 2.9.7   
Target Milestone: ---   
Platform: Other   
OS: Linux   
Latest Commit: Version Fixed/Implemented In:
Sentry Crash Report:

Description Halla Rempt 2015-09-05 09:39:34 UTC
This happened when I was undoing a contiguous selection. I'm not sure what's going on, but I'm pretty sure that the assert is overkill.

krita(4731): "[
0: /usr/lib64/libkdecore.so.5(kRealBacktrace(int)+0x3b) [0x7fb37b22a86b]
1: /home/boud/kde/inst/lib64/libkritaimage.so.14(+0x253eea) [0x7fb38054feea]
2: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisMergeWalker::startTripWithMask(QSharedPointer<KisProjectionLeaf>)+0x6f) [0x7fb380555c0f]
3: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisMergeWalker::startTrip(QSharedPointer<KisProjectionLeaf>)+0x54) [0x7fb3805568a4]
4: /home/boud/kde/inst/lib64/libkritaimage.so.14(+0x26c136) [0x7fb380568136]
5: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisSimpleUpdateQueue::processOneJob(KisUpdaterContext&)+0x48c) [0x7fb380562eec]
6: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisSimpleUpdateQueue::processQueue(KisUpdaterContext&)+0x3b) [0x7fb380563d9b]
7: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisUpdateScheduler::tryProcessUpdatesQueue()+0x2e) [0x7fb380569d7e]
8: /home/boud/kde/inst/lib64/libkritaimage.so.14(KisUpdateScheduler::processQueues()+0x9c) [0x7fb38056a22c]
9: /home/boud/kde/inst/lib64/libkritaimage.so.14(+0xe9bb8) [0x7fb3803e5bb8]
10: /usr/lib64/libQtCore.so.4(QMetaObject::activate(QObject*, QMetaObject const*, int, void**)+0x2da) [0x7fb37add21fa]
11: /home/boud/kde/inst/lib64/libkritaimage.so.14(+0xe9e3f) [0x7fb3803e5e3f]
12: /usr/lib64/libQtCore.so.4(QMetaObject::activate(QObject*, QMetaObject const*, int, void**)+0x2da) [0x7fb37add21fa]
13: /home/boud/kde/inst/lib64/libkritaimage.so.14(+0xee347) [0x7fb3803ea347]
14: /usr/lib64/libQtCore.so.4(+0x756ae) [0x7fb37acb06ae]
15: /usr/lib64/libQtCore.so.4(+0x8179f) [0x7fb37acbc79f]
16: /usr/X11R6/lib64/libGL.so.1(+0xaa754) [0x7fb37f9ac754]
]
" 
ASSERT: "parentLayer" in file /home/boud/kde/src/calligra/krita/image/kis_base_rects_walker.h, line 388
Comment 1 Halla Rempt 2015-09-05 09:44:25 UTC
Looks like this is very reproducible:

Thread 4 (Thread 0x7feb69b57700 (LWP 5731)):
[KCrash Handler]
#5  0x00007febac41b187 in raise () at /lib64/libc.so.6
#6  0x00007febac41c538 in abort () at /lib64/libc.so.6
#7  0x00007febad7162b4 in qt_message_output(QtMsgType, char const*) () at /usr/lib64/libQtCore.so.4
#8  0x00007febad716439 in  () at /usr/lib64/libQtCore.so.4
#9  0x00007febad716c44 in qFatal(char const*, ...) () at /usr/lib64/libQtCore.so.4
#10 0x00007febad716c8a in  () at /usr/lib64/libQtCore.so.4
#11 0x00007febb2fb3f6a in KisBaseRectsWalker::adjustMasksChangeRect(QSharedPointer<KisProjectionLeaf>) (this=0x7feb5404fd70, firstMask=...) at /home/boud/kde/src/calligra/krita/image/kis_base_rects_walker.h:388
#12 0x00007febb2fb9c0f in KisMergeWalker::startTripWithMask(QSharedPointer<KisProjectionLeaf>) (this=this@entry=0x7feb5404fd60, filthyMask=...) at /home/boud/kde/src/calligra/krita/image/kis_merge_walker.cc:56
#13 0x00007febb2fba8a4 in KisMergeWalker::startTrip(QSharedPointer<KisProjectionLeaf>) (this=0x7feb5404fd60, startLeaf=...) at /home/boud/kde/src/calligra/krita/image/kis_merge_walker.cc:42
#14 0x00007febb2fcc136 in KisBaseRectsWalker::collectRects(KisSharedPtr<KisNode>, QRect const&) (this=this@entry=0x7feb5404fd70, node=..., requestedRect=...) at /home/boud/kde/src/calligra/krita/image/kis_base_rects_walker.h:131
#15 0x00007febb2fc6eec in KisSimpleUpdateQueue::processOneJob(KisUpdaterContext&) (requestedRect=..., this=0x7feb5404fd70) at /home/boud/kde/src/calligra/krita/image/kis_base_rects_walker.h:140
#16 0x00007febb2fc6eec in KisSimpleUpdateQueue::processOneJob(KisUpdaterContext&) (this=this@entry=0x64ae990, updaterContext=...) at /home/boud/kde/src/calligra/krita/image/kis_simple_update_queue.cpp:103
#17 0x00007febb2fc7d9b in KisSimpleUpdateQueue::processQueue(KisUpdaterContext&) (this=0x64ae990, updaterContext=...) at /home/boud/kde/src/calligra/krita/image/kis_simple_update_queue.cpp:86
#18 0x00007febb2fcdd7e in KisUpdateScheduler::tryProcessUpdatesQueue() (this=0x64b9180) at /home/boud/kde/src/calligra/krita/image/kis_update_scheduler.cpp:339
#19 0x00007febb2fce22c in KisUpdateScheduler::processQueues() (this=0x64b9180) at /home/boud/kde/src/calligra/krita/image/kis_update_scheduler.cpp:296
#20 0x00007febb2e49bb8 in KisUpdateScheduler::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x64b9180, _c=5731, _id=2, _a=0x7feb69b56a80) at /home/boud/kde/build/calligra/krita/image/moc_kis_update_scheduler.cpp:53
#21 0x00007febad8361fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#22 0x00007febb2e49e3f in KisUpdaterContext::qt_static_metacall(QObject*, QMetaObject::Call, int, void**) (_o=0x6493650, _c=5731, _id=3, _a=0x7feb69b56c00) at /home/boud/kde/build/calligra/krita/image/moc_kis_updater_context.cpp:58
#23 0x00007febad8361fa in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () at /usr/lib64/libQtCore.so.4
#24 0x00007febb2e4e347 in KisUpdateJobItem::run() (this=0x6490110) at /home/boud/kde/build/calligra/krita/image/moc_kis_update_job_item.cpp:116
#25 0x00007febb2e4e347 in KisUpdateJobItem::run() (this=0x6490110) at /home/boud/kde/build/calligra/krita/image/../../../../src/calligra/krita/image/kis_update_job_item.h:68
#26 0x00007febad7146ae in  () at /usr/lib64/libQtCore.so.4
#27 0x00007febad72079f in  () at /usr/lib64/libQtCore.so.4
#28 0x00007febb2410754 in  () at /usr/X11R6/lib64/libGL.so.1
#29 0x00007febad48a0a4 in start_thread () at /lib64/libpthread.so.0
#30 0x00007febac4cb08d in clone () at /lib64/libc.so.6
Comment 2 Halla Rempt 2016-03-25 13:45:29 UTC
This code doesn't exist anymore in that place.