From 07f928c5f420055a4e523b82bda7a9f5002654ad Mon Sep 17 00:00:00 2001 From: buliabyak Date: Thu, 5 Jun 2008 18:10:40 +0000 Subject: [PATCH] optimization: don't copy SPCurve when transforming it, do this in place --- src/sp-path.cpp | 16 +++++----------- 1 file changed, 5 insertions(+), 11 deletions(-) diff --git a/src/sp-path.cpp b/src/sp-path.cpp index b2e26efa0..511e1efc5 100644 --- a/src/sp-path.cpp +++ b/src/sp-path.cpp @@ -378,17 +378,11 @@ sp_path_set_transform(SPItem *item, NR::Matrix const &xform) } // Transform the original-d path or the (ordinary) path - bool original_path = (bool)path->original_curve; - SPCurve *srccurve = original_path ? path->original_curve : shape->curve; - SPCurve *dstcurve = srccurve->copy(); - if (dstcurve) { - dstcurve->transform(xform); - if (original_path) { - sp_path_set_original_curve(path, dstcurve, TRUE, true); - } else { - sp_shape_set_curve(shape, dstcurve, TRUE); - } - dstcurve->unref(); + if (path->original_curve) { + path->original_curve->transform(xform); + sp_lpe_item_update_patheffect(path, true, true); + } else { + shape->curve->transform(xform); } // Adjust stroke -- 2.30.2