From 3321b13218e4e8d77cc591f0e1bdf09083ffa0d3 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Johannes=20W=C3=BCller?= Date: Tue, 29 Jul 2025 20:36:17 +0200 Subject: [PATCH] Sketcher: Fix external geometry out-of-bounds vector access (#22181) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Sketcher: Fix external geometry out-of-bounds vector access --------- Co-authored-by: Chris Hennes Co-authored-by: Ajinkya Dahale Co-authored-by: Benjamin Bræstrup Sayoc --- src/Mod/Sketcher/App/SketchObject.cpp | 8 ++------ 1 file changed, 2 insertions(+), 6 deletions(-) diff --git a/src/Mod/Sketcher/App/SketchObject.cpp b/src/Mod/Sketcher/App/SketchObject.cpp index 2b3577d336..fa75364cf6 100644 --- a/src/Mod/Sketcher/App/SketchObject.cpp +++ b/src/Mod/Sketcher/App/SketchObject.cpp @@ -7134,9 +7134,7 @@ int SketchObject::addExternal(App::DocumentObject* Obj, std::vector Types = ExternalTypes.getValues(); std::vector Objects = ExternalGeometry.getValues(); std::vector SubElements = ExternalGeometry.getSubValues(); - if (Types.size() != Objects.size()) { - Types.resize(Objects.size(), 0); - } + Types.resize(Objects.size(), static_cast(ExtType::Projection)); const std::vector originalObjects = Objects; const std::vector originalSubElements = SubElements; @@ -8763,9 +8761,7 @@ void SketchObject::rebuildExternalGeometry(std::optional extToAdd BRepBuilderAPI_MakeFace mkFace(sketchPlane); TopoDS_Shape aProjFace = mkFace.Shape(); - if (Types.size() != Objects.size()) { - Types.resize(Objects.size(), 0); - } + Types.resize(Objects.size(), static_cast(ExtType::Projection)); std::set refSet; // We use a vector here to keep the order (roughly) the same as ExternalGeometry