From 9ac0dda8ce6e0895368cfb5525c9e54d7fb69609 Mon Sep 17 00:00:00 2001 From: Michael Sherman Date: Mon, 3 Mar 2025 08:38:42 -0800 Subject: [PATCH] Hotfix for duplicate frame name problem --- multibody/tree/weld_joint.cc | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/multibody/tree/weld_joint.cc b/multibody/tree/weld_joint.cc index 8d0165a64c7a..54f650c2d43f 100644 --- a/multibody/tree/weld_joint.cc +++ b/multibody/tree/weld_joint.cc @@ -85,9 +85,8 @@ std::unique_ptr> WeldJoint::MakeMobilizerForJoint( // its model instance) and the name of the parent or child frame (not // necessarily unique). New frames go in the joint's model instance. auto F_frame_name = [this, tree](const Frame& frame) -> std::string { - const std::string F_name = - fmt::format("{}_{}_F", this->name(), frame.name()); - DRAKE_DEMAND(!tree->HasFrameNamed(F_name, this->model_instance())); + std::string F_name = fmt::format("{}_{}_F", this->name(), frame.name()); + while (tree->HasFrameNamed(F_name, this->model_instance())) F_name += "_"; return F_name; };