1
0
Fork 0

Merge pull request #107219 from RandomShaper/fix_overduplicate_res

Fix resources wrongly duplicated upon instantiating inherited scenes
This commit is contained in:
Rémi Verschelde 2025-06-07 00:44:11 +02:00
commit 57f064eaba
No known key found for this signature in database
GPG Key ID: C3336907360768E1
1 changed files with 6 additions and 6 deletions

View File

@ -356,18 +356,18 @@ Node *SceneState::instantiate(GenEditState p_edit_state) const {
} else {
Variant value = props[nprops[j].value];
// Making sure that instances of inherited scenes don't share the same
// reference between them.
if (is_inherited_scene) {
value = value.duplicate(true);
}
if (value.get_type() == Variant::OBJECT) {
//handle resources that are local to scene by duplicating them if needed
Ref<Resource> res = value;
if (res.is_valid()) {
value = make_local_resource(value, n, resources_local_to_sub_scene, node, snames[nprops[j].name], resources_local_to_scene, i, ret_nodes, p_edit_state);
}
} else {
// Making sure that instances of inherited scenes don't share the same
// reference between them.
if (is_inherited_scene) {
value = value.duplicate(true);
}
}
if (value.get_type() == Variant::ARRAY) {