Merge pull request #60424 from timothyqiu/fa-unref

Close `FileAccess` before accessing it with `DirAccess`
This commit is contained in:
Rémi Verschelde 2022-04-25 16:21:09 +02:00 committed by GitHub
commit 68ee730774
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
2 changed files with 6 additions and 0 deletions

View File

@ -1153,6 +1153,8 @@ Error ResourceFormatLoaderBinary::rename_dependencies(const String &p_path, cons
uint32_t ver_format = f->get_32(); uint32_t ver_format = f->get_32();
if (ver_format < FORMAT_VERSION_CAN_RENAME_DEPS) { if (ver_format < FORMAT_VERSION_CAN_RENAME_DEPS) {
fw.unref();
{ {
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM); Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_FILESYSTEM);
da->remove(p_path + ".depren"); da->remove(p_path + ".depren");
@ -1295,6 +1297,8 @@ Error ResourceFormatLoaderBinary::rename_dependencies(const String &p_path, cons
return ERR_CANT_CREATE; return ERR_CANT_CREATE;
} }
fw.unref();
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES); Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
da->remove(p_path); da->remove(p_path);
da->rename(p_path + ".depren", p_path); da->rename(p_path + ".depren", p_path);

View File

@ -898,6 +898,8 @@ Error ResourceLoaderText::rename_dependencies(Ref<FileAccess> p_f, const String
return ERR_CANT_CREATE; return ERR_CANT_CREATE;
} }
fw.unref();
Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES); Ref<DirAccess> da = DirAccess::create(DirAccess::ACCESS_RESOURCES);
da->remove(p_path); da->remove(p_path);
da->rename(p_path + ".depren", p_path); da->rename(p_path + ".depren", p_path);