1
0
Fork 0

Merge pull request #70234 from Rindbee/fix-uid-lost

Fix the uid field of the tscn/res file is lost when the external dependency is updated
This commit is contained in:
Rémi Verschelde 2023-04-25 16:16:47 +02:00
commit bbecc8ae0d
No known key found for this signature in database
GPG Key ID: C3336907360768E1
1 changed files with 12 additions and 2 deletions

View File

@ -946,14 +946,24 @@ Error ResourceLoaderText::rename_dependencies(Ref<FileAccess> p_f, const String
} else {
if (fw.is_null()) {
fw = FileAccess::open(p_path + ".depren", FileAccess::WRITE);
if (res_uid == ResourceUID::INVALID_ID) {
res_uid = ResourceSaver::get_resource_id_for_path(p_path);
}
String uid_text = "";
if (res_uid != ResourceUID::INVALID_ID) {
uid_text = " uid=\"" + ResourceUID::get_singleton()->id_to_text(res_uid) + "\"";
}
if (is_scene) {
fw->store_line("[gd_scene load_steps=" + itos(resources_total) + " format=" + itos(FORMAT_VERSION) + "]\n");
fw->store_line("[gd_scene load_steps=" + itos(resources_total) + " format=" + itos(FORMAT_VERSION) + uid_text + "]\n");
} else {
String script_res_text;
if (!script_class.is_empty()) {
script_res_text = "script_class=\"" + script_class + "\" ";
}
fw->store_line("[gd_resource type=\"" + res_type + "\" " + script_res_text + "load_steps=" + itos(resources_total) + " format=" + itos(FORMAT_VERSION) + "]\n");
fw->store_line("[gd_resource type=\"" + res_type + "\" " + script_res_text + "load_steps=" + itos(resources_total) + " format=" + itos(FORMAT_VERSION) + uid_text + "]\n");
}
}