Add <stem>/model.xml search path to mjz_decoder.

PiperOrigin-RevId: 952128127
Change-Id: I8a514297d84026a6028b2416e43df9b5a2a92bbb
This commit is contained in:
Sam Haves
2026-07-22 08:11:09 -07:00
committed by Copybara-Service
parent b6ab11dc6b
commit 1a5af23558
2 changed files with 7 additions and 5 deletions
+5 -3
View File
@@ -89,15 +89,17 @@ class ZipArchiveProvider : public mjpResourceProvider {
// Look for the root XML model in the archive. We try the following
// locations:
// 1. [archive_name].xml at the root of the archive.
// 2. [archive_name]/[archive_name].xml inside a subdirectory.
// 3. model.xml at the root of the archive (common zipped MJCF pattern).
// 1. [archive_name].xml
// 2. [archive_name]/[archive_name].xml
// 3. model.xml
// 4. [archive_name]/model.xml
const std::filesystem::path path(name_);
const std::string stem = path.stem().string();
std::vector<std::string> candidates = {
(path / stem).generic_string() + ".xml",
(path / stem / stem).generic_string() + ".xml",
(path / "model").generic_string() + ".xml",
(path / stem / "model").generic_string() + ".xml",
};
bool found = false;