Avoid changing semantics of mjsPlugin.name across XML sections.
The `extension` section used to discard the plugin name and write the instance name in `plugin.name`, while all of the other sections wrote the instance name in `plugin.instance_name` and optionally the plugin name in `plugin.name` (via the function `OnePlugin`). Now all plugin names are in `plugin.plugin_name` and the instance is written in `plugin.name`, so that it is possible to lookup a plugin via its unique instance name. PiperOrigin-RevId: 683183804 Change-Id: I179ef5d221143b720db24d745b09e327bf1449ef
This commit is contained in:
committed by
Copybara-Service
parent
5bfc7da7de
commit
66faba9aa5
@@ -91,8 +91,8 @@ mjCFlexcomp::mjCFlexcomp(void) {
|
||||
mjs_defaultOrientation(&alt);
|
||||
plugin_name = "";
|
||||
plugin_instance_name = "";
|
||||
plugin.name = (mjString*)&plugin_name;
|
||||
plugin.instance_name = (mjString*)&plugin_instance_name;
|
||||
plugin.plugin_name = (mjString*)&plugin_name;
|
||||
plugin.name = (mjString*)&plugin_instance_name;
|
||||
}
|
||||
|
||||
|
||||
@@ -441,8 +441,8 @@ bool mjCFlexcomp::Make(mjSpec* spec, mjsBody* body, char* error, int error_sz) {
|
||||
mjsPlugin* pplugin = &body->plugin;
|
||||
pplugin->active = true;
|
||||
pplugin->element = static_cast<mjsElement*>(plugin.element);
|
||||
mjs_setString(pplugin->name, mjs_getString(plugin.name));
|
||||
mjs_setString(pplugin->instance_name, plugin_instance_name.c_str());
|
||||
mjs_setString(pplugin->plugin_name, mjs_getString(plugin.plugin_name));
|
||||
mjs_setString(pplugin->name, plugin_instance_name.c_str());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -505,8 +505,8 @@ bool mjCFlexcomp::Make(mjSpec* spec, mjsBody* body, char* error, int error_sz) {
|
||||
mjsPlugin* pplugin = &pb->plugin;
|
||||
pplugin->active = true;
|
||||
pplugin->element = static_cast<mjsElement*>(plugin.element);
|
||||
mjs_setString(pplugin->name, mjs_getString(plugin.name));
|
||||
mjs_setString(pplugin->instance_name, plugin_instance_name.c_str());
|
||||
mjs_setString(pplugin->plugin_name, mjs_getString(plugin.plugin_name));
|
||||
mjs_setString(pplugin->name, plugin_instance_name.c_str());
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user