[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-commits
Subject: [calligra] krita/plugins/tools/defaulttools: Fix crashing when
From: Torio Mlshi <mlshi () lavabit ! com>
Date: 2011-10-31 20:29:01
Message-ID: 20111031202901.3EC94A60A6 () git ! kde ! org
[Download RAW message or body]
Git commit 0efcc581d1995d480752983fd9708baad44f88e0 by Torio Mlshi.
Committed on 31/10/2011 at 20:09.
Pushed by mlshi into branch 'master'.
Fix crashing when using tools on empty image
When image is empty (has no layers), color picker & move tools caused
crashes when using.
M +3 -0 krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc
M +11 -0 krita/plugins/tools/defaulttools/kis_tool_move.cc
http://commits.kde.org/calligra/0efcc581d1995d480752983fd9708baad44f88e0
diff --git a/krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc \
b/krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc index 006aa78..f5c0393 \
100644
--- a/krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_colorpicker.cc
@@ -88,6 +88,9 @@ void KisToolColorPicker::pickColor(const QPointF& pos)
m_colorPickerDelayTimer.start(100);
}
+ if (!currentNode())
+ return;
+
KisPaintDeviceSP dev = currentNode()->paintDevice();
if (!dev) return;
diff --git a/krita/plugins/tools/defaulttools/kis_tool_move.cc \
b/krita/plugins/tools/defaulttools/kis_tool_move.cc index 1ee0baa..986c7bc 100644
--- a/krita/plugins/tools/defaulttools/kis_tool_move.cc
+++ b/krita/plugins/tools/defaulttools/kis_tool_move.cc
@@ -188,6 +188,11 @@ void KisToolMove::mousePressEvent(KoPointerEvent *event)
if(!node) {
node = currentNode();
+ if (!node)
+ {
+ m_strokeId.clear();
+ return;
+ }
}
/**
@@ -237,6 +242,9 @@ void KisToolMove::mousePressEvent(KoPointerEvent *event)
void KisToolMove::mouseMoveEvent(KoPointerEvent *event)
{
if(MOVE_CONDITION(event, KisTool::PAINT_MODE)) {
+ if (!m_strokeId)
+ return;
+
QPoint pos = convertToPixelCoord(event).toPoint();
if ((event->modifiers() & Qt::AltModifier) ||
(event->modifiers() & Qt::ControlModifier)) {
@@ -258,6 +266,9 @@ void KisToolMove::mouseMoveEvent(KoPointerEvent *event)
void KisToolMove::mouseReleaseEvent(KoPointerEvent *event)
{
if(RELEASE_CONDITION(event, KisTool::PAINT_MODE, Qt::LeftButton)) {
+ if (!m_strokeId)
+ return;
+
setMode(KisTool::HOVER_MODE);
QPoint pos = convertToPixelCoord(event).toPoint();
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic