summaryrefslogtreecommitdiffstats
path: root/src/live_effects
diff options
context:
space:
mode:
Diffstat (limited to 'src/live_effects')
-rw-r--r--src/live_effects/lpegroupbbox.cpp4
-rw-r--r--src/live_effects/parameter/path.cpp8
2 files changed, 11 insertions, 1 deletions
diff --git a/src/live_effects/lpegroupbbox.cpp b/src/live_effects/lpegroupbbox.cpp
index 6df6278b1..a87baf4b4 100644
--- a/src/live_effects/lpegroupbbox.cpp
+++ b/src/live_effects/lpegroupbbox.cpp
@@ -46,7 +46,9 @@ GroupBBoxEffect::clip_mask_bbox(SPLPEItem *item, Geom::Affine transform)
std::vector<SPItem*> item_list = sp_item_group_item_list(group);
for ( std::vector<SPItem*>::const_iterator iter=item_list.begin();iter!=item_list.end();++iter) {
SPLPEItem * subitem = dynamic_cast<SPLPEItem *>(*iter);
- bbox.unionWith(clip_mask_bbox(subitem, affine));
+ if (subitem) {
+ bbox.unionWith(clip_mask_bbox(subitem, affine));
+ }
}
}
return bbox;
diff --git a/src/live_effects/parameter/path.cpp b/src/live_effects/parameter/path.cpp
index af553a029..ce06627c9 100644
--- a/src/live_effects/parameter/path.cpp
+++ b/src/live_effects/parameter/path.cpp
@@ -99,6 +99,14 @@ PathParam::~PathParam()
// }
// }
// }
+ SPDesktop *desktop = SP_ACTIVE_DESKTOP;
+ if (desktop) {
+ // TODO remove the tools_switch atrocity.
+ if (tools_isactive(desktop, TOOLS_NODES)) {
+ tools_switch(desktop, TOOLS_SELECT);
+ tools_switch(desktop, TOOLS_NODES);
+ }
+ }
g_free(defvalue);
}