summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorDiederik van Lierop <mailat-signdiedenrezidotnl>2010-08-15 19:54:12 +0000
committerDiederik van Lierop <mailat-signdiedenrezidotnl>2010-08-15 19:54:12 +0000
commitf624e4f24f6cc1a26552da5106f63ee4ae1fc57b (patch)
tree6b24708dce82d010e37bdf3c6745d9a2a4abff18 /src
parentFix a crash and add more safety checks to catch NULL pointers (diff)
downloadinkscape-f624e4f24f6cc1a26552da5106f63ee4ae1fc57b.tar.gz
inkscape-f624e4f24f6cc1a26552da5106f63ee4ae1fc57b.zip
2nd attempt at fixing the crash introduced in rev. #9692. This should nail it!
(bzr r9714)
Diffstat (limited to 'src')
-rw-r--r--src/snap-candidate.h4
-rw-r--r--src/snap.cpp4
-rw-r--r--src/ui/tool/node.cpp2
3 files changed, 5 insertions, 5 deletions
diff --git a/src/snap-candidate.h b/src/snap-candidate.h
index a0fc3290c..5c2834403 100644
--- a/src/snap-candidate.h
+++ b/src/snap-candidate.h
@@ -42,11 +42,11 @@ public:
_target_bbox = Geom::OptRect();
}
- SnapCandidatePoint(Geom::Point const &point, Inkscape::SnapSourceType const source, long const source_num = 0)
+ SnapCandidatePoint(Geom::Point const &point, Inkscape::SnapSourceType const source)
: _point(point),
_source_type(source),
_target_type(Inkscape::SNAPTARGET_UNDEFINED),
- _source_num(source_num)
+ _source_num(0)
{
_target_bbox = Geom::OptRect();
}
diff --git a/src/snap.cpp b/src/snap.cpp
index bcdf6c94f..9cde24e16 100644
--- a/src/snap.cpp
+++ b/src/snap.cpp
@@ -342,7 +342,7 @@ void SnapManager::constrainedSnapReturnByRef(Geom::Point &p,
Inkscape::Snapper::SnapConstraint const &constraint,
Geom::OptRect const &bbox_to_snap) const
{
- Inkscape::SnappedPoint const s = constrainedSnap(Inkscape::SnapCandidatePoint(p, source_type, 0), constraint, bbox_to_snap);
+ Inkscape::SnappedPoint const s = constrainedSnap(Inkscape::SnapCandidatePoint(p, source_type), constraint, bbox_to_snap);
s.getPoint(p);
}
@@ -609,7 +609,7 @@ Inkscape::SnappedPoint SnapManager::_snapTransformed(
bbox.expandTo(transformed);
}
- transformed_points.push_back(Inkscape::SnapCandidatePoint(transformed, (*i).getSourceType(), source_num));
+ transformed_points.push_back(Inkscape::SnapCandidatePoint(transformed, (*i).getSourceType(), source_num, Inkscape::SNAPTARGET_UNDEFINED, Geom::OptRect()));
source_num++;
}
diff --git a/src/ui/tool/node.cpp b/src/ui/tool/node.cpp
index f6fb6cc54..1070e4bc3 100644
--- a/src/ui/tool/node.cpp
+++ b/src/ui/tool/node.cpp
@@ -946,6 +946,7 @@ void Node::dragged(Geom::Point &new_pos, GdkEventMotion *event)
SnapManager &sm = _desktop->namedview->snap_manager;
bool snap = sm.someSnapperMightSnap();
Inkscape::SnappedPoint sp;
+ std::vector<Inkscape::SnapCandidatePoint> unselected;
if (snap) {
/* setup
* TODO We are doing this every time a snap happens. It should once be done only once
@@ -955,7 +956,6 @@ void Node::dragged(Geom::Point &new_pos, GdkEventMotion *event)
* TODO Snapping to unselected segments of selected paths doesn't work yet. */
// Build the list of unselected nodes.
- std::vector<Inkscape::SnapCandidatePoint> unselected;
typedef ControlPointSelection::Set Set;
Set &nodes = _selection.allPoints();
for (Set::iterator i = nodes.begin(); i != nodes.end(); ++i) {