diff --git a/src/sp-path.cpp b/src/sp-path.cpp
index a2f0f3169203539a2e08cf16f2a1716389427e2c..a863c12b4bdead0fc064932d886e28ee4497c85d 100644 (file)
--- a/src/sp-path.cpp
+++ b/src/sp-path.cpp
// Transform the original-d path if this is a valid LPE item, other else the (ordinary) path
if (path->original_curve && SP_IS_LPE_ITEM(item) &&
- sp_lpe_item_has_path_effect(SP_LPE_ITEM(item))) {
+ sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(item))) {
path->original_curve->transform(xform);
} else {
shape->curve->transform(xform);
} else {
repr->setAttribute("d", NULL);
}
- } else {
+ } else if (!success) {
// LPE was unsuccesfull. Read the old 'd'-attribute.
if (gchar const * value = repr->attribute("d")) {
Geom::PathVector pv = sp_svg_read_pathv(value);
sp_path_get_curve_for_edit (SPPath *path)
{
if (path->original_curve && SP_IS_LPE_ITEM(path) &&
- sp_lpe_item_has_path_effect(SP_LPE_ITEM(path))) {
+ sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(path))) {
return sp_path_get_original_curve(path);
} else {
return sp_shape_get_curve( (SPShape *) path );
sp_path_get_curve_reference (SPPath *path)
{
if (path->original_curve && SP_IS_LPE_ITEM(path) &&
- sp_lpe_item_has_path_effect(SP_LPE_ITEM(path))) {
+ sp_lpe_item_has_path_effect_recursive(SP_LPE_ITEM(path))) {
return path->original_curve;
} else {
return path->curve;