Bug 365985 - Assert while animating and trying to drag around keyframes.
Summary: Assert while animating and trying to drag around keyframes.
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Animation (show other bugs)
Version: git master (please specify the git hash!)
Platform: Other Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-07-22 14:58 UTC by wolthera
Modified: 2016-11-03 07:14 UTC (History)
1 user (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description wolthera 2016-07-22 14:58:38 UTC
I was dragging around keyframes and happened to be running Krita in gdb.

Backtrace:

ASSERT (krita): "m_frames.contains(frameId)" in file /home/krita/kde/src/krita/libs/image/kis_paint_device.cc, line 405

Thread 1 "krita" received signal SIGABRT, Aborted.
0x00007ffff4bb8418 in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:54
54	../sysdeps/unix/sysv/linux/raise.c: No such file or directory.
(gdb) thread apply all backtrace

Thread 9326 (Thread 0x7fff7d75e700 (LWP 18768)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:225
#1  0x00007ffff558e738 in QWaitCondition::wait(QMutex*, unsigned long) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#2  0x00007ffff558a467 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#3  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#4  0x00007fffef17f6fa in start_thread (arg=0x7fff7d75e700)
    at pthread_create.c:333
#5  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1983 (Thread 0x7fff77fff700 (LWP 2399)):
#0  0x00007ffff4c4e8dd in nanosleep () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffa203e57c in cimg_library::cimg::sleep (milliseconds=8)
    at /home/krita/kde/src/krita/plugins/extensions/gmic/3rdparty/gmic/./CImg.h:4325
#2  cimg_library::CImgDisplay::_events_thread (arg=<optimized out>)
    at /home/krita/kde/src/krita/plugins/extensions/gmic/3rdparty/gmic/./CImg.h:7341
---Type <return> to continue, or q <return> to quit---
#3  0x00007fffef17f6fa in start_thread (arg=0x7fff77fff700)
    at pthread_create.c:333
#4  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 11 (Thread 0x7fffa3fff700 (LWP 32388)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff558e7eb in QWaitCondition::wait(QMutex*, unsigned long) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#2  0x00007ffff6764aa2 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#3  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#4  0x00007fffef17f6fa in start_thread (arg=0x7fffa3fff700)
    at pthread_create.c:333
#5  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 10 (Thread 0x7fffa8a7e700 (LWP 32387)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff558e7eb in QWaitCondition::wait(QMutex*, unsigned long) ()
---Type <return> to continue, or q <return> to quit---
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#2  0x00007ffff5588116 in QSemaphore::tryAcquire(int, int) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#3  0x00007ffff3115dc3 in KisTileDataSwapper::waitForWork (
    this=<optimized out>)
    at /home/krita/kde/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#4  0x00007ffff3115fba in KisTileDataSwapper::run (
    this=0x7ffff3593380 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder+64>)
    at /home/krita/kde/src/krita/libs/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#5  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#6  0x00007fffef17f6fa in start_thread (arg=0x7fffa8a7e700)
    at pthread_create.c:333
#7  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 9 (Thread 0x7fffc0ed5700 (LWP 32386)):
#0  pthread_cond_wait@@GLIBC_2.3.2 ()
    at ../sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007ffff558e7eb in QWaitCondition::wait(QMutex*, unsigned long) ()
---Type <return> to continue, or q <return> to quit---
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#2  0x00007ffff5587e8b in QSemaphore::acquire(int) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#3  0x00007ffff30fc16e in KisTileDataPooler::waitForWork (
    this=0x7ffff3593340 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>)
    at /home/krita/kde/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:165
#4  0x00007ffff30fc92a in KisTileDataPooler::run (
    this=0x7ffff3593340 <(anonymous namespace)::Q_QGS_s_instance::innerFunction()::holder>)
    at /home/krita/kde/src/krita/libs/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#6  0x00007fffef17f6fa in start_thread (arg=0x7fffc0ed5700)
    at pthread_create.c:333
#7  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 6 (Thread 0x7fffd882b700 (LWP 32381)):
#0  0x00007ffff4c7de8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffee85431c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee85442c in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
---Type <return> to continue, or q <return> to quit---
#3  0x00007ffff579f4fc in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#4  0x00007ffff574defa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#5  0x00007ffff558938c in QThread::exec() ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#6  0x00007fffef3aacd5 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5DBus.so.5
#7  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#8  0x00007fffef17f6fa in start_thread (arg=0x7fffd882b700)
    at pthread_create.c:333
#9  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 5 (Thread 0x7fffd9246700 (LWP 32380)):
#0  0x00007ffff4c7de8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffee85431c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee8546a2 in g_main_loop_run ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffde6a3906 in ?? () from /usr/lib/x86_64-linux-gnu/libgio-2.0.so.0
#4  0x00007fffee87ab45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fffef17f6fa in start_thread (arg=0x7fffd9246700)
---Type <return> to continue, or q <return> to quit---
    at pthread_create.c:333
#6  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 4 (Thread 0x7fffd9a47700 (LWP 32379)):
#0  0x00007ffff4c7de8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffee85431c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee85442c in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffee854469 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#4  0x00007fffee87ab45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fffef17f6fa in start_thread (arg=0x7fffd9a47700)
    at pthread_create.c:333
#6  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 3 (Thread 0x7fffda248700 (LWP 32378)):
#0  0x00007ffff4c7de8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007fffee85431c in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007fffee85442c in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007fffda25028d in ?? ()
   from /usr/lib/x86_64-linux-gnu/gio/modules/libdconfsettings.so
---Type <return> to continue, or q <return> to quit---
#4  0x00007fffee87ab45 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#5  0x00007fffef17f6fa in start_thread (arg=0x7fffda248700)
    at pthread_create.c:333
#6  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 2 (Thread 0x7fffe4b65700 (LWP 32377)):
#0  0x00007ffff4c7de8d in poll () at ../sysdeps/unix/syscall-template.S:84
#1  0x00007ffff35acc62 in ?? () from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#2  0x00007ffff35ae8d7 in xcb_wait_for_event ()
   from /usr/lib/x86_64-linux-gnu/libxcb.so.1
#3  0x00007fffe5a14dc9 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/plugins/platforms/../../lib/libQt5XcbQpa.so.5
#4  0x00007ffff558dc89 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#5  0x00007fffef17f6fa in start_thread (arg=0x7fffe4b65700)
    at pthread_create.c:333
#6  0x00007ffff4c89b5d in clone ()
    at ../sysdeps/unix/sysv/linux/x86_64/clone.S:109

Thread 1 (Thread 0x7ffff7f0f8c0 (LWP 32373)):
#0  0x00007ffff4bb8418 in __GI_raise (sig=sig@entry=6)
    at ../sysdeps/unix/sysv/linux/raise.c:54
---Type <return> to continue, or q <return> to quit---
#1  0x00007ffff4bba01a in __GI_abort () at abort.c:89
#2  0x00007ffff55765fe in QMessageLogger::fatal(char const*, ...) const ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#3  0x00007ffff13f184f in kis_assert_common (
    assertion=assertion@entry=0x7ffff32f65bc "m_frames.contains(frameId)", 
    file=file@entry=0x7ffff32f6398 "/home/krita/kde/src/krita/libs/image/kis_paint_device.cc", line=line@entry=405, throwException=throwException@entry=false, 
    isIgnorable=isIgnorable@entry=false)
    at /home/krita/kde/src/krita/libs/global/kis_assert.cpp:90
#4  0x00007ffff13f1bba in kis_assert_recoverable (
    assertion=assertion@entry=0x7ffff32f65bc "m_frames.contains(frameId)", 
    file=file@entry=0x7ffff32f6398 "/home/krita/kde/src/krita/libs/image/kis_paint_device.cc", line=line@entry=405)
    at /home/krita/kde/src/krita/libs/global/kis_assert.cpp:103
#5  0x00007ffff32163c8 in KisPaintDevice::Private::currentFrameData (
    this=0x7fff6ed6a640)
    at /home/krita/kde/src/krita/libs/image/kis_paint_device.cc:405
#6  KisPaintDevice::Private::currentNonLodData (this=0x7fff6ed6a640)
    at /home/krita/kde/src/krita/libs/image/kis_paint_device.cc:423
#7  0x00007ffff320b0fd in KisPaintDevice::Private::colorSpace (
    this=<optimized out>)
    at /home/krita/kde/src/krita/libs/image/kis_paint_device.cc:113
#8  KisPaintDevice::colorSpace (this=<optimized out>)
---Type <return> to continue, or q <return> to quit---
    at /home/krita/kde/src/krita/libs/image/kis_paint_device.cc:1806
#9  0x00007ffff31d7db3 in KisLayer::alphaChannelDisabled (
    this=this@entry=0x7fff6c0983f0)
    at /home/krita/kde/src/krita/libs/image/kis_layer.cc:270
#10 0x00007ffff31dcdc1 in KisLayer::sectionModelProperties (
    this=this@entry=0x7fff6c0983f0)
    at /home/krita/kde/src/krita/libs/image/kis_layer.cc:226
#11 0x00007ffff3220249 in KisPaintLayer::sectionModelProperties (
    this=0x7fff6c0983f0)
    at /home/krita/kde/src/krita/libs/image/kis_paint_layer.cc:204
#12 0x00007ffff771cb30 in KisNodeModel::data (this=0xd527050, index=..., 
    role=258) at /home/krita/kde/src/krita/libs/ui/kis_node_model.cpp:453
#13 0x00007ffff571a6a8 in QSortFilterProxyModel::data(QModelIndex const&, int) const () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#14 0x00007ffff78ef8c9 in QModelIndex::data (arole=258, this=0x7fffffffbd00)
    at /home/krita/Qt/5.6/gcc_64/include/QtCore/qabstractitemmodel.h:420
#15 KisNodeDelegate::Private::numProperties (this=0xd51c6f0, index=...)
    at /home/krita/kde/src/krita/libs/ui/KisNodeDelegate.cpp:424
#16 0x00007ffff78efadf in KisNodeDelegate::iconsRect (
    this=this@entry=0xd51c6b0, option=..., index=...)
    at /home/krita/kde/src/krita/libs/ui/KisNodeDelegate.cpp:312
#17 0x00007ffff78efeae in KisNodeDelegate::drawFrame (
    this=this@entry=0xd51c6b0, p=p@entry=0x7fffffffc030, option=..., index=...)
---Type <return> to continue, or q <return> to quit---
    at /home/krita/kde/src/krita/libs/ui/KisNodeDelegate.cpp:214
#18 0x00007ffff78f3640 in KisNodeDelegate::paint (this=0xd51c6b0, 
    p=0x7fffffffc030, o=..., index=...)
    at /home/krita/kde/src/krita/libs/ui/KisNodeDelegate.cpp:111
#19 0x00007ffff67c7996 in QTreeView::drawRow(QPainter*, QStyleOptionViewItem const&, QModelIndex const&) const ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#20 0x00007ffff67cc24e in QTreeView::drawTree(QPainter*, QRegion const&) const
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#21 0x00007ffff67d1676 in QTreeView::paintEvent(QPaintEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#22 0x00007ffff78f78a0 in KisNodeView::paintEvent (this=0xd517510, 
    event=<optimized out>)
    at /home/krita/kde/src/krita/libs/ui/KisNodeView.cpp:446
#23 0x00007ffff6585308 in QWidget::event(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#24 0x00007ffff667d56e in QFrame::event(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#25 0x00007ffff679559b in QAbstractItemView::viewportEvent(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#26 0x00007ffff67d2530 in QTreeView::viewportEvent(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#27 0x00007ffff78f669b in KisNodeView::viewportEvent (this=0xd517510, 
---Type <return> to continue, or q <return> to quit---
    e=0x7fffffffc880) at /home/krita/kde/src/krita/libs/ui/KisNodeView.cpp:290
#28 0x00007ffff574fbf3 in QCoreApplicationPrivate::sendThroughObjectEventFilters(QObject*, QEvent*) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#29 0x00007ffff6543025 in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#30 0x00007ffff6547488 in QApplication::notify(QObject*, QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#31 0x00007ffff78d8567 in KisApplication::notify (this=<optimized out>, 
    receiver=0xd517b70, event=0x7fffffffc880)
    at /home/krita/kde/src/krita/libs/ui/KisApplication.cpp:505
#32 0x00007ffff574fe80 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#33 0x00007ffff657e71a in QWidgetPrivate::sendPaintEvent(QRegion const&) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#34 0x00007ffff657ed2f in QWidgetPrivate::drawWidget(QPaintDevice*, QRegion const&, QPoint const&, int, QPainter*, QWidgetBackingStore*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#35 0x00007ffff654fbbe in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#36 0x00007ffff654fea9 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#37 0x00007ffff656f6ef in QWidgetPrivate::syncBackingStore() ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
---Type <return> to continue, or q <return> to quit---
#38 0x00007ffff65853d0 in QWidget::event(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#39 0x00007ffff669301b in QMainWindow::event(QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#40 0x00007ffff6f68e87 in KMainWindow::event (this=this@entry=0xc2388c0, 
    ev=ev@entry=0x18e2bbe0)
    at /home/krita/kde/src/krita/libs/widgetutils/xmlgui/kmainwindow.cpp:780
#41 0x00007ffff6fa1499 in KXmlGuiWindow::event (this=0xc2388c0, ev=0x18e2bbe0)
    at /home/krita/kde/src/krita/libs/widgetutils/xmlgui/kxmlguiwindow.cpp:125
#42 0x00007ffff654304c in QApplicationPrivate::notify_helper(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#43 0x00007ffff6547488 in QApplication::notify(QObject*, QEvent*) ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Widgets.so.5
#44 0x00007ffff78d8567 in KisApplication::notify (this=<optimized out>, 
    receiver=0xc2388c0, event=0x18e2bbe0)
    at /home/krita/kde/src/krita/libs/ui/KisApplication.cpp:505
#45 0x00007ffff574fe80 in QCoreApplication::notifyInternal2(QObject*, QEvent*)
    () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#46 0x00007ffff5752673 in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#47 0x00007ffff579f0f3 in ?? ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#48 0x00007fffee854127 in g_main_context_dispatch ()
---Type <return> to continue, or q <return> to quit---
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#49 0x00007fffee854380 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#50 0x00007fffee85442c in g_main_context_iteration ()
   from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#51 0x00007ffff579f4e7 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#52 0x00007ffff574defa in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#53 0x00007ffff5755d9d in QCoreApplication::exec() ()
   from /home/krita/Qt/5.6/gcc_64/lib/libQt5Core.so.5
#54 0x0000000000404bc6 in main (argc=1, argv=<optimized out>)
    at /home/krita/kde/src/krita/krita/main.cc:230
(gdb) q
A debugging session is active.

	Inferior 1 [process 32373] will be killed.

Quit anyway? (y or n) y


Reproducible: Didn't try




Ubuntu 16.04
Comment 1 Dmitry Kazakov 2016-11-03 07:14:29 UTC
This bug should be now fixed by Jouni.