Do not overwrite existing parent frames for worldbody elements when attaching an mjSpec to a frame or a site.

PiperOrigin-RevId: 737662046
Change-Id: I7028c21c803c01845ae1d53cb476f7b3df172313
This commit is contained in:
Alessio Quaglino
2025-03-17 10:20:42 -07:00
committed by Copybara-Service
parent da04688071
commit 1bf24e9f67
9 changed files with 59 additions and 4 deletions
+1 -1
View File
@@ -272,7 +272,7 @@ py::list FindAllImpl(raw::MjsBody& body, mjtObj objtype, bool recursive) {
void SetFrame(raw::MjsBody* body, mjtObj objtype, raw::MjsFrame* frame) {
mjsElement* el = mjs_firstChild(body, objtype, 0);
while (el) {
if (frame->element != el) {
if (frame->element != el && mjs_getFrame(el) == nullptr) {
mjs_setFrame(el, frame);
}
el = mjs_nextChild(body, el, 0);