From 68e10c785672926aab15960678ca63625f843300 Mon Sep 17 00:00:00 2001 From: Xortex Date: Wed, 19 Sep 2018 19:55:41 +0200 Subject: fix bug 1791694 --- src/object/sp-lpe-item.cpp | 19 ------------------- src/selection-chemistry.cpp | 9 +++++++++ 2 files changed, 9 insertions(+), 19 deletions(-) mode change 100644 => 100755 src/object/sp-lpe-item.cpp (limited to 'src') diff --git a/src/object/sp-lpe-item.cpp b/src/object/sp-lpe-item.cpp old mode 100644 new mode 100755 index d6eaf7b6e..819bc7a58 --- a/src/object/sp-lpe-item.cpp +++ b/src/object/sp-lpe-item.cpp @@ -947,25 +947,6 @@ SPLPEItem::applyToClipPathOrMask(SPItem *clip_mask, SPItem* to, Inkscape::LivePa shape->setAttribute("inkscape:original-d", nullptr); } else { SPCurve * c = nullptr; - // If item is a SPRect, convert it to path first: - if ( dynamic_cast(shape) ) { - SPDesktop *desktop = SP_ACTIVE_DESKTOP; - if (desktop) { - Inkscape::Selection *sel = desktop->getSelection(); - if ( sel && !sel->isEmpty() ) { - sel->clear(); - sel->add(SP_ITEM(shape)); - sel->toCurves(); - SPItem* item = sel->singleItem(); - shape = dynamic_cast(item); - if (!shape) { - return; - } - sel->clear(); - sel->add(this); - } - } - } c = shape->getCurve(); if (c) { bool success = false; diff --git a/src/selection-chemistry.cpp b/src/selection-chemistry.cpp index b2a54244a..402fab372 100755 --- a/src/selection-chemistry.cpp +++ b/src/selection-chemistry.cpp @@ -3951,6 +3951,15 @@ void ObjectSet::setClipGroup() sort(items_.begin(),items_.end(),sp_object_compare_position_bool); + //convert any rects to paths + for (std::vector::const_iterator i = items_.begin(); i != items_.end(); ++i) { + clear(); + if (dynamic_cast(*i)) { + add(*i); + toCurves(); + } + } + // See lp bug #542004 clear(); -- cgit v1.2.3