Summary: | Krita crash while using sketch brush | ||
---|---|---|---|
Product: | [Applications] krita | Reporter: | Philippe Nicloux <phil.nicloux> |
Component: | General | Assignee: | Dmitry Kazakov <dimula73> |
Status: | RESOLVED FIXED | ||
Severity: | crash | CC: | dimula73, lukast.dev, phil.nicloux |
Priority: | NOR | ||
Version: | unspecified | ||
Target Milestone: | --- | ||
Platform: | Ubuntu | ||
OS: | Linux | ||
Latest Commit: | Version Fixed In: | ||
Sentry Crash Report: | |||
Attachments: | New crash information added by DrKonqi |
Description
Philippe Nicloux
2011-12-16 21:29:58 UTC
Which values did you change and to what did you change them? Le 16/12/2011 22:34, Sven Langkamp a écrit : > https://bugs.kde.org/show_bug.cgi?id=289145 > > > > > > --- Comment #1 from Sven Langkamp<sven langkamp gmail com> 2011-12-16 21:34:03 --- > Which values did you change and to what did you change them? > Hmm... I think it was randomness and spacing, and I trying randomly, just to play... the crash happened very fast. Could you try if you get the crash again and check what you changed? Le 16/12/2011 23:12, Sven Langkamp a écrit : > https://bugs.kde.org/show_bug.cgi?id=289145 > > > > > > --- Comment #3 from Sven Langkamp<sven langkamp gmail com> 2011-12-16 22:12:04 --- > Could you try if you get the crash again and check what you changed? > ok, i tried again, I changed "spikes", and as soon as I begin to draw in the test window, crash ! I tried to reproduce, but I was not able. I tested with wacom tablet and I changed the spikes, no problem, no crash Here is the proof http://wstaw.org/m/2011/12/17/plasma-desktopeB1699.jpg Can you try to reproduce and paste the backtrace again please? I found out how to reproduce it: -set spikes to some values -go to the size option and set the slider to 0 -paint in the scratchpad ->crash Changing spikes number from 2 to 3 crashes Krita on mouseRealeaseEvent. *But*, it doesn't crash under gdb. Update: I get a full X11 hang when doing the following: 1) Run Krita in gdb 2) Choose Sketch Brush 3) Choose Line Width to 4px (important) 4) Choose number of spikes > 2 5) Paint with Tablet (important) on a scratch box After mouseReleaseEvent, the entire X11 hangs up until I kill Krita with SIGKILL. If at the step 5 I will paint on real canvas instead of scratchbox, then I get a crash with the same backtrace as Philippe Nicloux got. No hangups happen. But I still have to use Tablet. I got the problem. The reason of this bug is that most of the tools call to const double scale = m_sizeOption.apply(pi); But not all of them check the value for being zero. So in some cases they get division by zero. Affected brushes: KisSketchPaintOp KisComplexOp KisDuplicateOp KisDeformBrush KisHairyPaintOp KisSprayPaintOp Waiting for a review: https://git.reviewboard.kde.org/r/103445/ Le 18/12/2011 12:20, Dmitry Kazakov a écrit : > https://bugs.kde.org/show_bug.cgi?id=289145 > > > Dmitry Kazakov<dimula73@gmail.com> changed: > > What |Removed |Added > ---------------------------------------------------------------------------- > Status|ASSIGNED |RESOLVED > Resolution| |WAITINGFORINFO > > > > > --- Comment #11 from Dmitry Kazakov<dimula73 gmail com> 2011-12-18 11:20:51 --- > Waiting for a review: > https://git.reviewboard.kde.org/r/103445/ > Hello, for me, it's always the same, I just have to change spikes parameters, the then, crash, on the scratchpad or on the page. Created attachment 66859 [details]
New crash information added by DrKonqi
krita (2.4 Beta 5) on KDE Platform 4.6.5 (4.6.5) using Qt 4.7.2
- What I was doing when the application crashed:I was changing "spikes"parameters in sketch tool
-- Backtrace (Reduced):
#6 0x00007f9f49de9ff9 in calcAngle (y=-nan(0x8000000000000), x=nan(0x8000000000000)) at /home/filou/source-to-compile/calligra/calligra-src/krita/image/kis_fast_math.cpp:77
#7 KisFastMath::atan2 (y=-nan(0x8000000000000), x=nan(0x8000000000000)) at /home/filou/source-to-compile/calligra/calligra-src/krita/image/kis_fast_math.cpp:131
#8 0x00007f9f49e2edde in KisCircleMaskGenerator::valueAt (this=0xeeeda90, x=<value optimized out>, y=<value optimized out>) at /home/filou/source-to-compile/calligra/calligra-src/krita/image/kis_circle_mask_generator.cpp:59
#9 0x00007f9f28fc7135 in process (this=0xfff8000000000000, dst=) at /home/filou/source-to-compile/calligra/calligra-src/krita/plugins/paintops/libbrush/kis_auto_brush.cpp:95
#10 KisAutoBrush::generateMaskAndApplyMaskOrCreateDab (this=0xfff8000000000000, dst=) at /home/filou/source-to-compile/calligra/calligra-src/krita/plugins/paintops/libbrush/kis_auto_brush.cpp:351
Git commit 92de02b1c01364e12dc157bee906eb6b3c85900f by Dmitry Kazakov. Committed on 18/12/2011 at 13:17. Pushed by dkazakov into branch 'master'. Added checks for 'zero'ness of the scale of the brush When using tablet, the last events coming from it are almost zero, so the resulting scale is zero as well. Default mask generator will get crazy if it gets zero scale due to division by zero. So we need to check in most of the tools whether the scale is not zero. BUG:289145 M +2 -0 krita/plugins/paintops/complexop/kis_complexop.cpp M +2 -0 krita/plugins/paintops/defaultpaintops/duplicate/kis_duplicateop.cpp M +3 -0 krita/plugins/paintops/deform/kis_deform_paintop.cpp M +2 -0 krita/plugins/paintops/hairy/kis_hairy_paintop.cpp M +5 -4 krita/plugins/paintops/sketch/kis_sketch_paintop.cpp M +2 -0 krita/plugins/paintops/spray/kis_spray_paintop.cpp http://commits.kde.org/calligra/92de02b1c01364e12dc157bee906eb6b3c85900f |