Bug 328901 - Krita asserts when changing the canvas type while the transform tool is active
Summary: Krita asserts when changing the canvas type while the transform tool is active
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Unclassified
Component: General (show other bugs)
Version: unspecified
Platform: openSUSE RPMs Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords: drkonqi
Depends on:
Blocks:
 
Reported: 2013-12-17 11:30 UTC by Halla Rempt
Modified: 2013-12-28 14:52 UTC (History)
0 users

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 Halla Rempt 2013-12-17 11:30:05 UTC
Application: krita (2.8 Beta 1)
KDE Platform Version: 4.11.3
Qt Version: 4.8.5
Operating System: Linux 3.11.6-4-desktop x86_64
Distribution: "openSUSE 13.1 (Bottle) (x86_64)"

-- Information about the crash:
12:25:15 < Eiken> think i even got a repro case
12:25:19 < Eiken> have opengl enabled
12:25:25 < Eiken> enable transform tool
12:25:31 < Eiken> go to settings and disable opengl

The crash can be reproduced every time.

-- Backtrace:
Application: Krita (krita), signal: Aborted
Using host libthread_db library "/lib64/libthread_db.so.1".
[Current thread is 1 (Thread 0x7fece535e8c0 (LWP 18541))]

Thread 5 (Thread 0x7fecc472c700 (LWP 18542)):
#0  0x00007fecdd0e50af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fecdd378b66 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fecdd374cfb in QSemaphore::acquire(int) () from /usr/lib64/libQtCore.so.4
#3  0x00007fece3f2c4d6 in waitForWork (this=0x2903000) at /home/boud/kde/src/2.8/krita/image/tiles3/kis_tile_data_pooler.cc:162
#4  KisTileDataPooler::run (this=0x2903000) at /home/boud/kde/src/2.8/krita/image/tiles3/kis_tile_data_pooler.cc:184
#5  0x00007fecdd37868f in ?? () from /usr/lib64/libQtCore.so.4
#6  0x00007fecdd0e10db in start_thread () from /lib64/libpthread.so.0
#7  0x00007fecdc39790d in clone () from /lib64/libc.so.6

Thread 4 (Thread 0x7fecc3f2b700 (LWP 18543)):
#0  0x00007fecdd0e50af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fecdd378b66 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fecdd375103 in QSemaphore::tryAcquire(int, int) () from /usr/lib64/libQtCore.so.4
#3  0x00007fece3f58843 in KisTileDataSwapper::waitForWork (this=<optimized out>) at /home/boud/kde/src/2.8/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:86
#4  0x00007fece3f58a6a in KisTileDataSwapper::run (this=0x2903038) at /home/boud/kde/src/2.8/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:92
#5  0x00007fecdd37868f in ?? () from /usr/lib64/libQtCore.so.4
#6  0x00007fecdd0e10db in start_thread () from /lib64/libpthread.so.0
#7  0x00007fecdc39790d in clone () from /lib64/libc.so.6

Thread 3 (Thread 0x7fecb2e0c700 (LWP 18568)):
#0  0x00007fecdd0e50af in pthread_cond_wait@@GLIBC_2.3.2 () from /lib64/libpthread.so.0
#1  0x00007fecdd378b66 in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib64/libQtCore.so.4
#2  0x00007fecde5ddac6 in ?? () from /usr/lib64/libQtGui.so.4
#3  0x00007fecdd37868f in ?? () from /usr/lib64/libQtCore.so.4
#4  0x00007fecdd0e10db in start_thread () from /lib64/libpthread.so.0
#5  0x00007fecdc39790d in clone () from /lib64/libc.so.6

Thread 2 (Thread 0x7fecb260b700 (LWP 18569)):
#0  0x00007fecdc390913 in select () from /lib64/libc.so.6
#1  0x00007fecdd4a26fb in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib64/libQtCore.so.4
#2  0x00007fecdd4a8374 in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib64/libQtCore.so.4
#3  0x00007fecdd4a87d2 in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#4  0x00007fecdd476d0f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#5  0x00007fecdd477005 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#6  0x00007fecdd375fef in QThread::exec() () from /usr/lib64/libQtCore.so.4
#7  0x00007fecdd458513 in ?? () from /usr/lib64/libQtCore.so.4
#8  0x00007fecdd37868f in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007fecdd0e10db in start_thread () from /lib64/libpthread.so.0
#10 0x00007fecdc39790d in clone () from /lib64/libc.so.6

Thread 1 (Thread 0x7fece535e8c0 (LWP 18541)):
[KCrash Handler]
#5  0x00007fecdc2e5849 in raise () from /lib64/libc.so.6
#6  0x00007fecdc2e6cd8 in abort () from /lib64/libc.so.6
#7  0x00007fecdd36e204 in qt_message_output(QtMsgType, char const*) () from /usr/lib64/libQtCore.so.4
#8  0x00007fecdd36e389 in ?? () from /usr/lib64/libQtCore.so.4
#9  0x00007fecdd36eb94 in qFatal(char const*, ...) () from /usr/lib64/libQtCore.so.4
#10 0x00007fece4551972 in KisOpenGLUpdateInfo::dirtyViewportRect (this=<optimized out>) at /home/boud/kde/src/2.8/krita/ui/canvas/kis_update_info.cpp:36
#11 0x00007fece453436a in KisCanvas2::updateCanvasProjection (this=this@entry=0x5c7a100, info=...) at /home/boud/kde/src/2.8/krita/ui/canvas/kis_canvas2.cpp:607
#12 0x00007fece453accb in KisCanvas2::qt_static_metacall (_o=0x5c7a100, _c=<optimized out>, _id=<optimized out>, _a=0x4f62dd0) at /home/boud/kde/build/2.8/krita/ui/kis_canvas2.moc:106
#13 0x00007fecdd49011e in QObject::event(QEvent*) () from /usr/lib64/libQtCore.so.4
#14 0x00007fecde1058ac in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#15 0x00007fecde10be70 in QApplication::notify(QObject*, QEvent*) () from /usr/lib64/libQtGui.so.4
#16 0x00007fece3b75947 in KoApplication::notify (this=<optimized out>, receiver=0x5c7a100, event=0x764bf40) at /home/boud/kde/src/2.8/libs/main/KoApplication.cpp:549
#17 0x00007fecdd4780ad in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib64/libQtCore.so.4
#18 0x00007fecdd47b0ff in QCoreApplicationPrivate::sendPostedEvents(QObject*, int, QThreadData*) () from /usr/lib64/libQtCore.so.4
#19 0x00007fecde1a30ac in ?? () from /usr/lib64/libQtGui.so.4
#20 0x00007fecdd476d0f in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#21 0x00007fecdd477005 in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib64/libQtCore.so.4
#22 0x00007fecdd47c13b in QCoreApplication::exec() () from /usr/lib64/libQtCore.so.4
#23 0x00007fece4d32b45 in kdemain (argc=<optimized out>, argv=<optimized out>) at /home/boud/kde/src/2.8/krita/main.cc:99
#24 0x00007fecdc2d1be5 in __libc_start_main () from /lib64/libc.so.6
#25 0x00000000004009f1 in _start () at ../sysdeps/x86_64/start.S:122

Reported using DrKonqi
Comment 1 Dmitry Kazakov 2013-12-22 11:12:18 UTC
Git commit b4d1877b0929e27c98ce41f4607670cf17c66ecd by Dmitry Kazakov.
Committed on 22/12/2013 at 11:11.
Pushed by dkazakov into branch 'master'.

Fix the crash when changing the canvas type while Transform Tool active

M  +9    -1    krita/ui/canvas/kis_canvas2.cpp

http://commits.kde.org/calligra/b4d1877b0929e27c98ce41f4607670cf17c66ecd
Comment 2 Dmitry Kazakov 2013-12-28 14:52:53 UTC
Git commit 720daa7892d3bbd0a036d1ebdd6f87d8ee552d8e by Dmitry Kazakov.
Committed on 22/12/2013 at 11:11.
Pushed by dkazakov into branch 'calligra/2.8'.

Fix the crash when changing the canvas type while Transform Tool active

M  +9    -1    krita/ui/canvas/kis_canvas2.cpp

http://commits.kde.org/calligra/720daa7892d3bbd0a036d1ebdd6f87d8ee552d8e