Bug 251626 - Painting with spray brush when Krita crashed
Summary: Painting with spray brush when Krita crashed
Status: RESOLVED DUPLICATE of bug 254394
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: Ubuntu Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2010-09-18 03:25 UTC by Kubuntiac
Modified: 2010-10-26 21:18 UTC (History)
2 users (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 Kubuntiac 2010-09-18 03:25:09 UTC
Application: krita (2.3 Beta 1)
KDE Platform Version: 4.5.1 (KDE 4.5.1)
Qt Version: 4.7.0
Operating System: Linux 2.6.32-24-generic-pae i686
Distribution: Ubuntu 10.04.1 LTS

-- Information about the crash:
I had painted with the spray brush (default settings) and I'd changed the brush size a couple of times (with shift+left/right) when Krita crashed.

DrKonqi suggested it was a three star crash that might be related to the other bug tagged as being it's prior dupe. That bug is marked as closed though in an earlier revision.

I'm on Kubuntu Lucid (10.04) using the FOSS ATI drivers on a 32 bit arch. I'm running Krita r1176447 with the KDE 4.5.1 packages and QT 4.7 Beta 2.

-- Backtrace:
Application: Krita (krita), signal: Segmentation fault
[Current thread is 1 (Thread 0xb3ebaaa0 (LWP 12097))]

Thread 5 (Thread 0xaf290b70 (LWP 12098)):
#0  0xb7799430 in __kernel_vsyscall ()
#1  0xb4ac7971 in select () from /lib/tls/i686/cmov/libc.so.6
#2  0xb7673c22 in qt_safe_select (nfds=17, fdread=0xa3c7e28, fdwrite=0xa3c803c, fdexcept=0xa3c8250, orig_timeout=0x0) at kernel/qcore_unix.cpp:82
#3  0xb7678599 in QEventDispatcherUNIX::select (this=0xa231408, nfds=17, readfds=0xa3c7e28, writefds=0xa3c803c, exceptfds=0xa3c8250, timeout=0x0) at kernel/qeventdispatcher_unix.cpp:632
#4  0xb7679117 in QEventDispatcherUNIXPrivate::doSelect (this=0xa3c7d30, flags=..., timeout=0x0) at kernel/qeventdispatcher_unix.cpp:219
#5  0xb7679e95 in QEventDispatcherUNIX::processEvents (this=0xa231408, flags=...) at kernel/qeventdispatcher_unix.cpp:919
#6  0xb7646a99 in QEventLoop::processEvents (this=0xaf290280, flags=) at kernel/qeventloop.cpp:149
#7  0xb7646f1a in QEventLoop::exec (this=0xaf290280, flags=...) at kernel/qeventloop.cpp:201
#8  0xb7543c5e in QThread::exec (this=0xa2dd340) at thread/qthread.cpp:490
#9  0xb76259ab in QInotifyFileSystemWatcherEngine::run (this=0xa2dd340) at io/qfilesystemwatcher_inotify.cpp:248
#10 0xb7546f39 in QThreadPrivate::start (arg=0xa2dd340) at thread/qthread_unix.cpp:266
#11 0xb74ca96e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#12 0xb4acea4e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 4 (Thread 0xae8ffb70 (LWP 12104)):
#0  0xb7799430 in __kernel_vsyscall ()
#1  0xb74cf015 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/i686/cmov/libpthread.so.0
#2  0xb7547b07 in QWaitConditionPrivate::wait (this=0xa3ad2bc, mutex=0xa3ad2b8, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#3  QWaitCondition::wait (this=0xa3ad2bc, mutex=0xa3ad2b8, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#4  0xb754339f in QSemaphore::acquire (this=0xa564180, n=1) at thread/qsemaphore.cpp:144
#5  0xb709a4e3 in KisTileDataPooler::waitForWork (this=0xa564178) at /home/user/Apps/Koffice/koffice-src/krita/image/tiles3/kis_tile_data_pooler.cc:127
#6  0xb709a743 in KisTileDataPooler::run (this=0xa564178) at /home/user/Apps/Koffice/koffice-src/krita/image/tiles3/kis_tile_data_pooler.cc:156
#7  0xb7546f39 in QThreadPrivate::start (arg=0xa564178) at thread/qthread_unix.cpp:266
#8  0xb74ca96e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#9  0xb4acea4e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 3 (Thread 0xae0feb70 (LWP 12105)):
#0  0xb7799430 in __kernel_vsyscall ()
#1  0xb74cf015 in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/tls/i686/cmov/libpthread.so.0
#2  0xb7547b07 in QWaitConditionPrivate::wait (this=0xa4d80d4, mutex=0xa4d80d0, time=4294967295) at thread/qwaitcondition_unix.cpp:88
#3  QWaitCondition::wait (this=0xa4d80d4, mutex=0xa4d80d0, time=4294967295) at thread/qwaitcondition_unix.cpp:160
#4  0xb754365a in QSemaphore::tryAcquire (this=0xa564720, n=1, timeout=-1) at thread/qsemaphore.cpp:221
#5  0xb70b7e10 in KisTileDataSwapper::waitForWork (this=0xa564194) at /home/user/Apps/Koffice/koffice-src/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:84
#6  0xb70b8214 in KisTileDataSwapper::run (this=0xa564194) at /home/user/Apps/Koffice/koffice-src/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:90
#7  0xb7546f39 in QThreadPrivate::start (arg=0xa564194) at thread/qthread_unix.cpp:266
#8  0xb74ca96e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#9  0xb4acea4e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 2 (Thread 0xad8fdb70 (LWP 14690)):
[KCrash Handler]
#7  0xb7145519 in KisSharedPtr<KisNode>::operator== (this=0xbe65458, node=) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_shared_ptr.h:128
#8  QList<KisSharedPtr<KisNode> >::contains (this=0xbe65458, node=) at /usr/include/qt4/QtCore/qlist.h:863
#9  KisNode::index (this=0xbe65458, node=) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:179
#10 0xb7145af8 in KisNode::prevSibling (this=0xc758ab8) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:150
#11 0xb7118845 in KisMergeWalker::startTrip (this=0xa5164ab8, startWith=) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_merge_walker.cc:40
#12 0xb711e275 in KisBaseRectsWalker::collectRects (this=0xbb83ec8, node=..., rc=..., cropRect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_base_rects_walker.h:84
#13 KisSimpleUpdateQueue::addJob (this=0xbb83ec8, node=..., rc=..., cropRect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_simple_update_queue.cpp:106
#14 0xb711fa6f in KisUpdateScheduler::updateProjection (this=0xde73470, node=..., rc=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_update_scheduler.cpp:52
#15 0xb7128276 in KisImage::updateProjection (this=0xbfcc130, node=) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_image.cc:1075
#16 0xb71388b5 in KisLayer::setDirty (this=0xc758ab8, rect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_layer.cc:225
#17 0xb71471c6 in KisNode::setDirty (this=0xc758ab8, region=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:303
#18 0xb74029f3 in KisToolFreehand::setDirty (this=0xf1b8880, region=...) at /home/user/Apps/Koffice/koffice-src/krita/ui/tool/kis_tool_freehand.cc:551
#19 0xb74093be in FreehandPaintBezierJob::run (this=0xf66dd40) at /home/user/Apps/Koffice/koffice-src/krita/ui/tool/kis_tool_freehand_p.cpp:111
#20 0xb753b603 in QThreadPoolThread::run (this=0xf66c1f8) at concurrent/qthreadpool.cpp:106
#21 0xb7546f39 in QThreadPrivate::start (arg=0xf66c1f8) at thread/qthread_unix.cpp:266
#22 0xb74ca96e in start_thread () from /lib/tls/i686/cmov/libpthread.so.0
#23 0xb4acea4e in clone () from /lib/tls/i686/cmov/libc.so.6

Thread 1 (Thread 0xb3ebaaa0 (LWP 12097)):
#0  0xb7799430 in __kernel_vsyscall ()
#1  0xb4ac0b86 in poll () from /lib/tls/i686/cmov/libc.so.6
#2  0xb4518d60 in ?? () from /usr/lib/libxcb.so.1
#3  0xb45192cb in ?? () from /usr/lib/libxcb.so.1
#4  0xb4519667 in xcb_writev () from /usr/lib/libxcb.so.1
#5  0xb6a47d79 in _XSend () from /usr/lib/libX11.so.6
#6  0xb6a47f10 in _XReply () from /usr/lib/libX11.so.6
#7  0xb6b83540 in DRI2GetBuffersWithFormat () from /usr/lib/mesa/libGL.so.1
#8  0xb6b82552 in ?? () from /usr/lib/mesa/libGL.so.1
#9  0xa9ed6eee in radeon_update_renderbuffers () from /usr/lib/dri/r600_dri.so
#10 0xa9ed7732 in radeonMakeCurrent () from /usr/lib/dri/r600_dri.so
#11 0xa9eb32a2 in ?? () from /usr/lib/dri/r600_dri.so
#12 0xb6b8230c in ?? () from /usr/lib/mesa/libGL.so.1
#13 0xb6b5de62 in glXMakeCurrentReadSGI () from /usr/lib/mesa/libGL.so.1
#14 0xb6b5df33 in glXMakeCurrent () from /usr/lib/mesa/libGL.so.1
#15 0xb6988268 in QGLContext::makeCurrent (this=0xa9b1c80) at qgl_x11.cpp:931
#16 0xb691136a in QGLWidget::makeCurrent (this=0xa96d308) at qgl.cpp:3854
#17 0xb73e72cf in KisOpenGL::makeContextCurrent () at /home/user/Apps/Koffice/koffice-src/krita/ui/opengl/kis_opengl.cpp:56
#18 0xb73ea3da in KisOpenGLImageTextures::recalculateCache (this=0xb672e10, info=...) at /home/user/Apps/Koffice/koffice-src/krita/ui/opengl/kis_opengl_image_textures.cpp:241
#19 0xb729d3fb in KisCanvas2::updateCanvasProjection (this=0xc07a130, info=...) at /home/user/Apps/Koffice/koffice-src/krita/ui/canvas/kis_canvas2.cpp:473
#20 0xb729fd76 in KisCanvas2::qt_metacall (this=0xc07a130, _c=QMetaObject::InvokeMetaMethod, _id=8, _a=0xaa15a058) at /home/user/Apps/Koffice/koffice-build/krita/ui/kis_canvas2.moc:121
#21 0xb764dd4a in QMetaObject::metacall (object=0xc07a130, cl=QMetaObject::ReadProperty, idx=12, argv=0xaa15a058) at kernel/qmetaobject.cpp:237
#22 0xb7659226 in QMetaCallEvent::placeMetaCall (this=0xa99ae490, object=0xc07a130) at kernel/qobject.cpp:534
#23 0xb765aac2 in QObject::event (this=0xc07a130, e=0xffffffff) at kernel/qobject.cpp:1219
#24 0xb513977c in QApplicationPrivate::notify_helper (this=0x9c1eb08, receiver=0xc07a130, e=0xa99ae490) at kernel/qapplication.cpp:4396
#25 0xb513f7ce in QApplication::notify (this=0xbfa94fb0, receiver=0xc07a130, e=0xa99ae490) at kernel/qapplication.cpp:3798
#26 0xb5cbca9a in KApplication::notify (this=0xbfa94fb0, receiver=0xc07a130, event=0xa99ae490) at ../../kdeui/kernel/kapplication.cpp:310
#27 0xb7647feb in QCoreApplication::notifyInternal (this=0xbfa94fb0, receiver=0xc07a130, event=0xa99ae490) at kernel/qcoreapplication.cpp:732
#28 0xb764b24b in QCoreApplication::sendEvent (receiver=0x0, event_type=0, data=0x9bd2860) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:215
#29 QCoreApplicationPrivate::sendPostedEvents (receiver=0x0, event_type=0, data=0x9bd2860) at kernel/qcoreapplication.cpp:1373
#30 0xb764b40d in QCoreApplication::sendPostedEvents (receiver=0x0, event_type=0) at kernel/qcoreapplication.cpp:1266
#31 0xb51fc01f in QCoreApplication::sendPostedEvents (this=0x9bd23f0, flags=...) at ../../include/QtCore/../../src/corelib/kernel/qcoreapplication.h:220
#32 QEventDispatcherX11::processEvents (this=0x9bd23f0, flags=...) at kernel/qeventdispatcher_x11.cpp:75
#33 0xb7646a99 in QEventLoop::processEvents (this=0xbfa94f44, flags=) at kernel/qeventloop.cpp:149
#34 0xb7646f1a in QEventLoop::exec (this=0xbfa94f44, flags=...) at kernel/qeventloop.cpp:201
#35 0xb764b4cf in QCoreApplication::exec () at kernel/qcoreapplication.cpp:1009
#36 0xb51385a7 in QApplication::exec () at kernel/qapplication.cpp:3672
#37 0xb77945dd in kdemain (argc=1, argv=0xbfa950c4) at /home/user/Apps/Koffice/koffice-src/krita/main.cc:49
#38 0x0804884b in main (argc=1, argv=0xbfa950c4) at /home/user/Apps/Koffice/koffice-build/krita/krita_dummy.cpp:3

This bug may be a duplicate of or related to bug 243687.

Possible duplicates by query: bug 245132, bug 244763, bug 235278.

Reported using DrKonqi
Comment 1 LukasT 2010-10-05 12:54:31 UTC
Can you reproduce it?
Comment 2 Kubuntiac 2010-10-05 23:16:50 UTC
I'm not having any luck in reproducing it at the moment. I'm on the same system, except QT has been updated to 4.7.0 final and Krita was updated to current trunk yesterday.
Comment 3 Kubuntiac 2010-10-06 19:53:54 UTC
Actually, I think I've found out how to reproduce it more...

1. Open a new canvas (standard sRGB).
2. Increase the size of the brush to around 550
3. Increase density to around 100.
4. Paint with the cursor *outside the canvas* (but so the brush extends onto the canvas).

It usually takes 30 seconds or less before getting a crash.
Comment 4 LukasT 2010-10-18 13:35:58 UTC
There is problem with density - it is not implemented correctly for shapes different from pixel or anti-aliased pixel. I was trying to reproduce, but it did not crashed for me on QPainter canvas.

From the backtrace it seems that you used OpenGL canvas. I tried to triage the OpenGL canvas too. But seems to works for me :/

Can you reproduce it everytime? More then just once?
If so, can you paste the backtrace again?
Comment 5 Kubuntiac 2010-10-20 09:57:04 UTC
Ok, I've got a new bt for you. This time I was using count 100 instead of density 100.

#0  0xb7982369 in operator== (this=0x8b61bc8, node=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.
) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_shared_ptr.h:128                                                                                                                     
#1  contains (this=0x8b61bc8, node=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.                             
) at /usr/include/qt4/QtCore/qlist.h:863
#2  KisNode::index (this=0x8b61bc8, node=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.                       
) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:187
#3  0xb79829b8 in KisNode::prevSibling (this=0x8226768) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:158
#4  0xb7952ce5 in KisMergeWalker::startTrip (this=0xa7838f28, startWith=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.                                                                                                                                                                                      
) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_merge_walker.cc:40                                                                                                                   
#5  0xb79586e5 in collectRects (this=0x8b67ca0, node=..., rc=..., cropRect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_base_rects_walker.h:84                                 
#6  KisSimpleUpdateQueue::addJob (this=0x8b67ca0, node=..., rc=..., cropRect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_simple_update_queue.cpp:106                          
#7  0xb7959af5 in KisUpdateScheduler::updateProjection (this=0x82268a0, node=..., rc=..., cropRect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_update_scheduler.cpp:51        
---Type <return> to continue, or q <return> to quit---                                                                                                                                        
#8  0xb796415d in KisImage::updateProjection (this=0x8b58370, node=DWARF-2 expression error: DW_OP_reg operations must be used either alone or in conjuction with DW_OP_piece or DW_OP_bit_piece.                                                                                                                                                                                           
) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_image.cc:1115                                                                                                                        
#9  0xb7974f31 in KisLayer::setDirty (this=0x8226768, rect=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_layer.cc:226
#10 0xb79840c6 in KisNode::setDirty (this=0x8226768, region=...) at /home/user/Apps/Koffice/koffice-src/krita/image/kis_node.cpp:311
#11 0xb7c47b57 in KisToolFreehand::setDirty (this=0x9614360, region=...) at /home/user/Apps/Koffice/koffice-src/krita/ui/tool/kis_tool_freehand.cc:449
#12 0xb7c4c76e in FreehandPaintBezierJob::run (this=0xa44dc78) at /home/user/Apps/Koffice/koffice-src/krita/ui/tool/kis_tool_freehand_p.cpp:111
#13 0xb7d7f523 in QThreadPoolThread::run (this=0xa58f818) at concurrent/qthreadpool.cpp:106
#14 0xb7d8adf9 in QThreadPrivate::start (arg=0xa58f818) at thread/qthread_unix.cpp:266
#15 0xb7d13cc9 in start_thread () from /lib/libpthread.so.0
---Type <return> to continue, or q <return> to quit---
#16 0xb53786ae in clone () from /lib/libc.so.6
Comment 6 Dmitry Kazakov 2010-10-26 21:18:45 UTC

*** This bug has been marked as a duplicate of bug 254394 ***