Bug 355205 - Crash while trying to use the Move Tool (multiple windows of the same file opened)
Summary: Crash while trying to use the Move Tool (multiple windows of the same file op...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Mint (Ubuntu based) Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2015-11-11 17:48 UTC by LeStr4wberry
Modified: 2015-11-14 11:04 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 LeStr4wberry 2015-11-11 17:48:53 UTC
Application: krita (2.9.9)
KDE Platform Version: 4.14.2
Qt Version: 4.8.6
Operating System: Linux 4.1.6-040106-generic x86_64
Distribution: Linux Mint 17.2 Rafaela

-- Information about the crash:
- What I was doing when the application crashed: I was trying to use the Move Tool (Deevad's brush set) on a document with multiple layers.  A subwindow mode was enabled, with two windows showing the same file next to one another. Prior to the crash I noticed glitches in the second window - instead of showing the same thing as the first window, a gray circle appered in the place whete rhe deform brush was pressed. OpenGL was enabled. I use Linux Mint 17.2, kernel 4.1.6. My GPU is HD 7770, I use open source drivers (git-3f45d29 2015-11-11 trusty-oibaf-ppa).

- Custom settings of the application:  OpenGL enabled, I use the newest brush set graciously shared by David Revoy. I use the most recent krita-testing from the Lime PPA (2015-11-04).

-- Backtrace:
Application: Krita (krita), signal: Aborted
Using host libthread_db library "/lib/x86_64-linux-gnu/libthread_db.so.1".
[Current thread is 1 (Thread 0x7f8cc79067c0 (LWP 6709))]

Thread 6 (Thread 0x7f8c95ec3700 (LWP 6721)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8cc54b7816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8cc54b395b in QSemaphore::acquire(int) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f8cc3688030 in waitForWork (this=0x28bdaf0) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/image/tiles3/kis_tile_data_pooler.cc:165
#4  KisTileDataPooler::run (this=0x28bdaf0) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/image/tiles3/kis_tile_data_pooler.cc:187
#5  0x00007f8cc54b732f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f8cbf513182 in start_thread (arg=0x7f8c95ec3700) at pthread_create.c:312
#7  0x00007f8cc4c5747d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 5 (Thread 0x7f8c94ec1700 (LWP 6722)):
#0  pthread_cond_timedwait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_timedwait.S:238
#1  0x00007f8cc54b5f4a in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8cc54b676d in QThread::msleep(unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#3  0x00007f8cc36b100a in KisTileDataSwapper::run (this=0x28bdb30) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:97
#4  0x00007f8cc54b732f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f8cbf513182 in start_thread (arg=0x7f8c94ec1700) at pthread_create.c:312
#6  0x00007f8cc4c5747d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 4 (Thread 0x7f8c966c4700 (LWP 6723)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8cc54b7816 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#2  0x00007f8cc6488e16 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#3  0x00007f8cc54b732f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f8cbf513182 in start_thread (arg=0x7f8c966c4700) at pthread_create.c:312
#5  0x00007f8cc4c5747d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 3 (Thread 0x7f8c956c2700 (LWP 6724)):
#0  0x00007f8cc4c4a12d in poll () at ../sysdeps/unix/syscall-template.S:81
#1  0x00007f8cbf033fe4 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#2  0x00007f8cbf0340ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#3  0x00007f8cc55e67be in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#4  0x00007f8cc55b80af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#5  0x00007f8cc55b83a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#6  0x00007f8cc54b4c5f in QThread::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#7  0x00007f8cc5599823 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f8cc54b732f in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f8cbf513182 in start_thread (arg=0x7f8c956c2700) at pthread_create.c:312
#10 0x00007f8cc4c5747d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 2 (Thread 0x7f8ca103c700 (LWP 6733)):
#0  pthread_cond_wait@@GLIBC_2.3.2 () at ../nptl/sysdeps/unix/sysv/linux/x86_64/pthread_cond_wait.S:185
#1  0x00007f8c419bb2b3 in ?? () from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#2  0x00007f8c419baae9 in ?? () from /usr/lib/x86_64-linux-gnu/dri/radeonsi_dri.so
#3  0x00007f8cbf513182 in start_thread (arg=0x7f8ca103c700) at pthread_create.c:312
#4  0x00007f8cc4c5747d in clone () at ../sysdeps/unix/sysv/linux/x86_64/clone.S:111

Thread 1 (Thread 0x7f8cc79067c0 (LWP 6709)):
[KCrash Handler]
#5  0x00007f8cc4b93cc9 in __GI_raise (sig=sig@entry=6) at ../nptl/sysdeps/unix/sysv/linux/raise.c:56
#6  0x00007f8cc4b970d8 in __GI_abort () at abort.c:89
#7  0x00007f8cc54acc92 in qt_message_output(QtMsgType, char const*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#8  0x00007f8cc54acff9 in ?? () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#9  0x00007f8cc54ad804 in qFatal(char const*, ...) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#10 0x00007f8cc1684929 in kis_assert_common (assertion=assertion@entry=0x7f8cc73241ae "m_dummiesMap.contains(node)", file=file@entry=0x7f8cc7324058 "/build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/flake/kis_node_dummies_graph.cpp", line=line@entry=188, throwException=throwException@entry=false) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/libglobal/kis_assert.cpp:76
#11 0x00007f8cc1684dd7 in kis_assert_recoverable (assertion=assertion@entry=0x7f8cc73241ae "m_dummiesMap.contains(node)", file=file@entry=0x7f8cc7324058 "/build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/flake/kis_node_dummies_graph.cpp", line=line@entry=188) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/libglobal/kis_assert.cpp:85
#12 0x00007f8cc6dfb156 in KisNodeDummiesGraph::nodeToDummy (this=0x1053a8e0, node=...) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/flake/kis_node_dummies_graph.cpp:188
#13 0x00007f8cc6e07769 in KisNodeShapesGraph::nodeToDummy (this=<optimized out>, node=...) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/flake/kis_node_shapes_graph.cpp:81
#14 0x00007f8cc6e0ae41 in KisShapeController::dummyForNode (this=<optimized out>, node=...) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/flake/kis_shape_controller.cpp:129
#15 0x00007f8cc6f11796 in KisNodeModel::indexFromNode (this=0x338bdd0, node=...) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/kis_node_model.cpp:109
#16 0x00007f8c9874b735 in KisLayerBox::setCurrentNode (this=this@entry=0x3363430, node=...) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/plugins/extensions/dockers/defaultdockers/kis_layer_box.cpp:470
#17 0x00007f8c9874bad1 in KisLayerBox::setCanvas (this=0x3363430, canvas=<optimized out>) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/plugins/extensions/dockers/defaultdockers/kis_layer_box.cpp:358
#18 0x00007f8cc1371818 in KoCanvasControllerWidget::Private::activate (this=0xbb05200) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/libs/flake/KoCanvasControllerWidget.cpp:163
#19 0x00007f8cc71d6c53 in KisViewManager::setCurrentView (this=0x1fa9d70, view=0xab192b0) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/KisViewManager.cpp:447
#20 0x00007f8cc718d19c in KisMainWindow::setActiveSubWindow (this=0x1fb02e0, window=0x1a35) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/KisMainWindow.cpp:1919
#21 0x00007f8cc718d7b9 in KisMainWindow::subWindowActivated (this=this@entry=0x1fb02e0) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/KisMainWindow.cpp:1837
#22 0x00007f8cc719fe1d in KisMainWindow::qt_static_metacall (_o=0x1fb02e0, _c=<optimized out>, _id=<optimized out>, _a=0x7fff0a2cca90) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/obj-x86_64-linux-gnu/krita/ui/KisMainWindow.moc:204
#23 0x00007f8cc55cd87a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#24 0x00007f8cc63bfeff in QMdiArea::subWindowActivated(QMdiSubWindow*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#25 0x00007f8cc63c2fb3 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#26 0x00007f8cc63c5219 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#27 0x00007f8cc63c5814 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#28 0x00007f8cc55cd87a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#29 0x00007f8cc63cc257 in QMdiSubWindow::windowStateChanged(QFlags<Qt::WindowState>, QFlags<Qt::WindowState>) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#30 0x00007f8cc63d0e61 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#31 0x00007f8cc63d1117 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#32 0x00007f8cc55cd87a in QMetaObject::activate(QObject*, QMetaObject const*, int, void**) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#33 0x00007f8cc5faa97b in QApplication::focusChanged(QWidget*, QWidget*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#34 0x00007f8cc5fb05aa in QApplicationPrivate::setFocusWidget(QWidget*, Qt::FocusReason) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#35 0x00007f8cc5ff668b in QWidget::setFocus(Qt::FocusReason) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#36 0x00007f8cc5fb24ef in QApplication::notify(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#37 0x00007f8cc714c4b7 in KisApplication::notify (this=<optimized out>, receiver=0x1c0b990, event=0x7fff0a2cd360) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/ui/KisApplication.cpp:543
#38 0x00007f8cc55b94dd in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#39 0x00007f8cc5fb1d93 in QApplicationPrivate::sendMouseEvent(QWidget*, QMouseEvent*, QWidget*, QWidget*, QWidget**, QPointer<QWidget>&, bool) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#40 0x00007f8cc60269eb in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#41 0x00007f8cc6026289 in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#42 0x00007f8cc604db32 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#43 0x00007f8cbf033e04 in g_main_context_dispatch () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#44 0x00007f8cbf034048 in ?? () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#45 0x00007f8cbf0340ec in g_main_context_iteration () from /lib/x86_64-linux-gnu/libglib-2.0.so.0
#46 0x00007f8cc55e67a1 in QEventDispatcherGlib::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#47 0x00007f8cc604dbe6 in ?? () from /usr/lib/x86_64-linux-gnu/libQtGui.so.4
#48 0x00007f8cc55b80af in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#49 0x00007f8cc55b83a5 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#50 0x00007f8cc55bdb79 in QCoreApplication::exec() () from /usr/lib/x86_64-linux-gnu/libQtCore.so.4
#51 0x0000000000402830 in main (argc=<optimized out>, argv=<optimized out>) at /build/krita-testing-rK1wQ0/krita-testing-2+git20151104+r40/krita/main.cc:204

Possible duplicates by query: bug 350280, bug 349819.

Reported using DrKonqi
Comment 1 Dmitry Kazakov 2015-11-13 08:45:49 UTC
Confirm. The bug is still present.
Comment 2 Dmitry Kazakov 2015-11-13 10:11:13 UTC
Git commit 73d23f52ccc5d23718c7b51951ba07aceb6eea03 by Dmitry Kazakov.
Committed on 13/11/2015 at 10:10.
Pushed by dkazakov into branch 'calligra/2.9'.

Fix a crash when switching subwindows after removing a layer

This happened becayse KisView stored a pointer to a locally active
layer which has been deleted while the view was inactive

M  +15   -0    krita/image/krita_utils.cpp
M  +4    -0    krita/image/krita_utils.h
M  +22   -0    krita/ui/KisView.cpp
M  +6    -0    krita/ui/KisView.h

http://commits.kde.org/calligra/73d23f52ccc5d23718c7b51951ba07aceb6eea03
Comment 3 Dmitry Kazakov 2015-11-14 10:50:47 UTC
Git commit 40dd708f0c3bec0f2f1cea3b34fa91e86027990d by Dmitry Kazakov.
Committed on 13/11/2015 at 10:13.
Pushed by dkazakov into branch 'krita-animation-pentikainen'.

Fix a crash when switching subwindows after removing a layer

This happened becayse KisView stored a pointer to a locally active
layer which has been deleted while the view was inactive

M  +15   -0    krita/image/krita_utils.cpp
M  +4    -1    krita/image/krita_utils.h
M  +22   -0    krita/ui/KisView.cpp
M  +6    -0    krita/ui/KisView.h

http://commits.kde.org/calligra/40dd708f0c3bec0f2f1cea3b34fa91e86027990d
Comment 4 Dmitry Kazakov 2015-11-14 11:04:07 UTC
Git commit fc43e93b274e41139ccdd2901113c07e46c6a05c by Dmitry Kazakov.
Committed on 14/11/2015 at 11:03.
Pushed by dkazakov into branch 'master'.

Fix a crash when switching subwindows after removing a layer

This happened becayse KisView stored a pointer to a locally active
layer which has been deleted while the view was inactive

M  +15   -0    krita/image/krita_utils.cpp
M  +4    -1    krita/image/krita_utils.h
M  +22   -0    krita/ui/KisView.cpp
M  +6    -0    krita/ui/KisView.h

http://commits.kde.org/krita/fc43e93b274e41139ccdd2901113c07e46c6a05c