Bug 269423 - color smudge brush crash
Summary: color smudge brush crash
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: General (show other bugs)
Version: unspecified
Platform: unspecified Linux
: NOR crash
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-03-25 22:58 UTC by Joshua L. Blocher
Modified: 2011-05-21 20:01 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 Joshua L. Blocher 2011-03-25 22:58:18 UTC
Application: krita (2.4 Alpha 1)
KDE Platform Version: 4.6.1 (4.6.1)
Qt Version: 4.7.2
Operating System: Linux 2.6.38-CHAKRA x86_64

-- Information about the crash:
- What I was doing when the application crashed:


I'm on Chakra GNU/Linux 2011.04 (Aida)

I trying out the new color smudge brush with my wacom tablet.
Set the preset to smudge only 
I started drawing to an immedite crash.

-- Backtrace:
Application: Krita (kdeinit4), signal: Segmentation fault
[Current thread is 1 (Thread 0x7f7559792760 (LWP 11795))]

Thread 6 (Thread 0x7f75356b3710 (LWP 11799)):
#0  0x00007f7556d942f3 in select () from /lib/libc.so.6
#1  0x00007f755840f0a1 in qt_safe_select(int, fd_set*, fd_set*, fd_set*, timeval const*) () from /usr/lib/libQtCore.so.4
#2  0x00007f755841471d in QEventDispatcherUNIXPrivate::doSelect(QFlags<QEventLoop::ProcessEventsFlag>, timeval*) () from /usr/lib/libQtCore.so.4
#3  0x00007f75584154af in QEventDispatcherUNIX::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#4  0x00007f75583e2892 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#5  0x00007f75583e2adc in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#6  0x00007f75582e9a48 in QThread::exec() () from /usr/lib/libQtCore.so.4
#7  0x00007f75583c2920 in QInotifyFileSystemWatcherEngine::run() () from /usr/lib/libQtCore.so.4
#8  0x00007f75582ec6ca in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#9  0x00007f755805ecb0 in start_thread () from /lib/libpthread.so.0
#10 0x00007f7556d9a9fd in clone () from /lib/libc.so.6
#11 0x0000000000000000 in ?? ()

Thread 5 (Thread 0x7f7535eb4710 (LWP 11805)):
#0  0x00007f755806340c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f75582eceeb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f75582e9014 in QSemaphore::acquire(int) () from /usr/lib/libQtCore.so.4
#3  0x00007f7548272c2e in KisTileDataPooler::waitForWork (this=0x1eb1160) at /home/verbalshadow/projects/kde/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:160
#4  0x00007f754827330c in KisTileDataPooler::run (this=0x1eb1160) at /home/verbalshadow/projects/kde/src/calligra/krita/image/tiles3/kis_tile_data_pooler.cc:182
#5  0x00007f75582ec6ca in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#6  0x00007f755805ecb0 in start_thread () from /lib/libpthread.so.0
#7  0x00007f7556d9a9fd in clone () from /lib/libc.so.6
#8  0x0000000000000000 in ?? ()

Thread 4 (Thread 0x7f7534eb2710 (LWP 11806)):
#0  0x00007f755806340c in pthread_cond_wait@@GLIBC_2.3.2 () from /lib/libpthread.so.0
#1  0x00007f75582eceeb in QWaitCondition::wait(QMutex*, unsigned long) () from /usr/lib/libQtCore.so.4
#2  0x00007f75582e9399 in QSemaphore::tryAcquire(int, int) () from /usr/lib/libQtCore.so.4
#3  0x00007f7548293daa in KisTileDataSwapper::run (this=0x1eb1198) at /home/verbalshadow/projects/kde/src/calligra/krita/image/tiles3/swap/kis_tile_data_swapper.cpp:90
#4  0x00007f75582ec6ca in QThreadPrivate::start(void*) () from /usr/lib/libQtCore.so.4
#5  0x00007f755805ecb0 in start_thread () from /lib/libpthread.so.0
#6  0x00007f7556d9a9fd in clone () from /lib/libc.so.6
#7  0x0000000000000000 in ?? ()

Thread 3 (Thread 0x7f752bbb6710 (LWP 11814)):
#0  0x00007f75580655a0 in sem_wait () from /lib/libpthread.so.0
#1  0x00007f7529dcf2f8 in ?? () from /usr/lib/xorg/modules/dri//fglrx_dri.so
#2  0x00007f7529dcf21d in ?? () from /usr/lib/xorg/modules/dri//fglrx_dri.so
#3  0x00007f755805ecb0 in start_thread () from /lib/libpthread.so.0
#4  0x00007f7556d9a9fd in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 2 (Thread 0x7f752b3b5710 (LWP 11815)):
#0  0x00007f75580655a0 in sem_wait () from /lib/libpthread.so.0
#1  0x00007f7529dcf2f8 in ?? () from /usr/lib/xorg/modules/dri//fglrx_dri.so
#2  0x00007f7529dcf21d in ?? () from /usr/lib/xorg/modules/dri//fglrx_dri.so
#3  0x00007f755805ecb0 in start_thread () from /lib/libpthread.so.0
#4  0x00007f7556d9a9fd in clone () from /lib/libc.so.6
#5  0x0000000000000000 in ?? ()

Thread 1 (Thread 0x7f7559792760 (LWP 11795)):
[KCrash Handler]
#6  KisSharedPtr (this=0x10) at /home/verbalshadow/projects/kde/src/calligra/krita/image/kis_shared_ptr.h:102
#7  KisPaintOpSettings::node (this=0x10) at /home/verbalshadow/projects/kde/src/calligra/krita/image/brushengine/kis_paintop_settings.cpp:94
#8  0x00007f7535eca6ae in MyPaint (this=0x31b3850, settings=0x0, painter=0x65eba60, image=<value optimized out>)
    at /home/verbalshadow/projects/kde/src/calligra/krita/plugins/paintops/mypaint/mypaint_paintop.cpp:42
#9  0x00007f7535ece99f in MyPaintFactory::createOp (this=<value optimized out>, settings=<value optimized out>, painter=0x65eba60, image=<value optimized out>)
    at /home/verbalshadow/projects/kde/src/calligra/krita/plugins/paintops/mypaint/mypaint_paintop_factory.cpp:80
#10 0x00007f75482a6ea7 in KisPaintOpRegistry::paintOp (this=<value optimized out>, id=<value optimized out>, settings=..., painter=0x65eba60, image=<value optimized out>)
    at /home/verbalshadow/projects/kde/src/calligra/krita/image/brushengine/kis_paintop_registry.cc:83
#11 0x00007f75482a7376 in KisPaintOpRegistry::paintOp (this=0x216c450, preset=<value optimized out>, painter=0x65eba60, image=<value optimized out>)
    at /home/verbalshadow/projects/kde/src/calligra/krita/image/brushengine/kis_paintop_registry.cc:95
#12 0x00007f754829e32a in KisPainter::setPaintOpPreset (this=0x65eba60, preset=<value optimized out>, image=<value optimized out>)
    at /home/verbalshadow/projects/kde/src/calligra/krita/image/kis_painter.cc:2317
#13 0x00007f754880c8d2 in KisTool::setupPainter (this=0x57e5b00, painter=0x65eba60) at /home/verbalshadow/projects/kde/src/calligra/krita/ui/tool/kis_tool.cc:571
#14 0x00007f7548815b7c in KisToolPaint::setupPainter (this=0x57e5b00, painter=0x65eba60) at /home/verbalshadow/projects/kde/src/calligra/krita/ui/tool/kis_tool_paint.cc:373
#15 0x00007f7548810edf in KisToolFreehand::initPaint (this=0x57e5b00) at /home/verbalshadow/projects/kde/src/calligra/krita/ui/tool/kis_tool_freehand.cc:377
#16 0x00007f752fbc60de in KisToolBrush::initPaint (this=0x57e5b00, e=<value optimized out>) at /home/verbalshadow/projects/kde/src/calligra/krita/plugins/tools/defaulttools/kis_tool_brush.cc:89
#17 0x00007f754881264f in KisToolFreehand::mousePressEvent (this=0x57e5b00, e=0x7fff2aa1fcf0) at /home/verbalshadow/projects/kde/src/calligra/krita/ui/tool/kis_tool_freehand.cc:179
#18 0x00007f7546ae5824 in KoToolProxy::tabletEvent (this=0x4c764b0, event=0x7fff2aa20810, point=...) at /home/verbalshadow/projects/kde/src/calligra/libs/flake/KoToolProxy.cpp:148
#19 0x00007f75486bd9dd in KisCanvasWidgetBase::processTabletEvent (this=0x507e438, e=0x7fff2aa20810) at /home/verbalshadow/projects/kde/src/calligra/krita/ui/canvas/kis_canvas_widget_base.cpp:300
#20 0x00007f7557546a41 in QWidget::event(QEvent*) () from /usr/lib/libQtGui.so.4
#21 0x00007f75574ed9a4 in QApplicationPrivate::notify_helper(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#22 0x00007f75574f34cc in QApplication::notify(QObject*, QEvent*) () from /usr/lib/libQtGui.so.4
#23 0x00007f7559191d26 in KApplication::notify(QObject*, QEvent*) () from /usr/lib/libkdeui.so.5
#24 0x00007f75583e3ddc in QCoreApplication::notifyInternal(QObject*, QEvent*) () from /usr/lib/libQtCore.so.4
#25 0x00007f7557565f24 in QETWidget::translateXinputEvent(_XEvent const*, QTabletDeviceData*) () from /usr/lib/libQtGui.so.4
#26 0x00007f7557575b5e in QApplication::x11ProcessEvent(_XEvent*) () from /usr/lib/libQtGui.so.4
#27 0x00007f755759f6b3 in QEventDispatcherX11::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtGui.so.4
#28 0x00007f75583e2892 in QEventLoop::processEvents(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#29 0x00007f75583e2adc in QEventLoop::exec(QFlags<QEventLoop::ProcessEventsFlag>) () from /usr/lib/libQtCore.so.4
#30 0x00007f75583e805b in QCoreApplication::exec() () from /usr/lib/libQtCore.so.4
#31 0x00007f7548aec375 in kdemain (argc=<value optimized out>, argv=<value optimized out>) at /home/verbalshadow/projects/kde/src/calligra/krita/main.cc:49
#32 0x00000000004071f3 in _start ()

Reported using DrKonqi
Comment 1 Halla Rempt 2011-03-26 10:00:18 UTC
Hi! Thanks for your report. Looking at the backtrace, it looks like there is a problem in the mypaint paintop, not the color smudge brush. I haven't yet been able to reproduce a crash in either, though.

There's definitely something weird going on, since the settings object never should be 0...
Comment 2 Halla Rempt 2011-05-21 20:01:29 UTC
Git commit c1d60744a737b2596d31e0a585b466ceb8a11fd5 by Boudewijn Rempt.
Committed on 21/05/2011 at 08:50.
Pushed by rempt into branch 'master'.

Mypaint paintop: don't create a paintop if we don't have a settings object

BUG:269423

M  +7    -5    krita/plugins/paintops/mypaint/mypaint_paintop_factory.cpp     

http://commits.kde.org/calligra/c1d60744a737b2596d31e0a585b466ceb8a11fd5