diff options
Diffstat (limited to 'src/splivarot.cpp')
| -rw-r--r-- | src/splivarot.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/src/splivarot.cpp b/src/splivarot.cpp index 242cf3a24..a0c21d23d 100644 --- a/src/splivarot.cpp +++ b/src/splivarot.cpp @@ -432,8 +432,10 @@ sp_selected_path_boolop(bool_op bop, const unsigned int verb, const Glib::ustrin } gint pos = repr_source->position(); Inkscape::XML::Node *parent = sp_repr_parent(repr_source); - char const *id = repr_source->attribute("id"); - char const *style = repr_source->attribute("style"); + gchar const *id = repr_source->attribute("id"); + gchar const *style = repr_source->attribute("style"); + gchar const *mask = repr_source->attribute("mask"); + gchar const *clip_path = repr_source->attribute("clip-path"); // remove source paths @@ -487,6 +489,11 @@ sp_selected_path_boolop(bool_op bop, const unsigned int verb, const Glib::ustrin Inkscape::XML::Node *repr = sp_repr_new("svg:path"); repr->setAttribute("style", style); + if (mask) + repr->setAttribute("mask", mask); + if (clip_path) + repr->setAttribute("clip-path", clip_path); + repr->setAttribute("d", d); g_free(d); @@ -528,6 +535,12 @@ sp_selected_path_boolop(bool_op bop, const unsigned int verb, const Glib::ustrin Inkscape::XML::Node *repr = sp_repr_new("svg:path"); repr->setAttribute("style", style); + if ( mask ) + repr->setAttribute("mask", mask); + + if ( clip_path ) + repr->setAttribute("clip-path", clip_path); + repr->setAttribute("d", d); g_free(d); |
