diff --git a/nav2_common/nav2_common/launch/rewritten_yaml.py b/nav2_common/nav2_common/launch/rewritten_yaml.py index 33ab686d5e..2887fa5503 100644 --- a/nav2_common/nav2_common/launch/rewritten_yaml.py +++ b/nav2_common/nav2_common/launch/rewritten_yaml.py @@ -136,11 +136,13 @@ def updateYamlPathVals(self, yaml, yaml_key_list, rewrite_val): def substitute_keys(self, yaml, key_rewrites): if len(key_rewrites) != 0: - for key, val in yaml.items(): - if isinstance(val, dict) and key in key_rewrites: + for key in list(yaml.keys()): + val = yaml[key] + if key in key_rewrites: new_key = key_rewrites[key] yaml[new_key] = yaml[key] del yaml[key] + if isinstance(val, dict): self.substitute_keys(val, key_rewrites) def getYamlLeafKeys(self, yamlData):