From 81735a92e86c7457d9df7e5481c1bbf21a650cd6 Mon Sep 17 00:00:00 2001 From: Abdullah Tahiri Date: Thu, 7 Jan 2021 12:02:17 +0100 Subject: [PATCH] Sketcher: std::move improvement fixes --- src/Mod/Sketcher/App/SketchObject.cpp | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/src/Mod/Sketcher/App/SketchObject.cpp b/src/Mod/Sketcher/App/SketchObject.cpp index 05f1f399eb..37e81f3b13 100644 --- a/src/Mod/Sketcher/App/SketchObject.cpp +++ b/src/Mod/Sketcher/App/SketchObject.cpp @@ -1162,8 +1162,7 @@ int SketchObject::setConstruction(int GeoId, bool on) // in the accumulative of actions it is judged that it is worth to trigger an update here. std::unique_ptr geo(vals[GeoId]->clone()); - auto gft = GeometryFacade::getFacade(geo.get()); - gft->setConstruction(!gft->getConstruction()); + GeometryFacade::setConstruction(geo.get(), on); this->Geometry.set1Value(GeoId, std::move(geo)); solverNeedsUpdate=true; @@ -5693,6 +5692,9 @@ int SketchObject::carbonCopy(App::DocumentObject * pObj, bool construction) const std::vector< Sketcher::Constraint * > &scvals = psObj->Constraints.getValues(); + newVals.reserve(vals.size()+svals.size()); + newcVals.reserve(cvals.size()+scvals.size()); + if(psObj->ExternalGeometry.getSize()>0) { std::vector Objects = ExternalGeometry.getValues(); std::vector SubElements = ExternalGeometry.getSubValues();