Merge pull request #86177 from KoBeWi/depren_never_forgets

Fix file disappearing when renaming dependencies
This commit is contained in:
Yuri Sizov 2023-12-16 17:50:05 +01:00
commit df9be54b2f
2 changed files with 6 additions and 4 deletions

View File

@ -1454,8 +1454,10 @@ Error ResourceFormatLoaderBinary::rename_dependencies(const String &p_path, cons
fw.unref();
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
da->remove(p_path);
da->rename(p_path + ".depren", p_path);
if (da->exists(p_path + ".depren")) {
da->remove(p_path);
da->rename(p_path + ".depren", p_path);
}
return OK;
}

View File

@ -1790,8 +1790,8 @@ Error ResourceFormatLoaderText::rename_dependencies(const String &p_path, const
err = loader.rename_dependencies(f, p_path, p_map);
}
if (err == OK) {
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
if (err == OK && da->file_exists(p_path + ".depren")) {
da->remove(p_path);
da->rename(p_path + ".depren", p_path);
}