Added error checks for fscache saving

(cherry picked from commit 06e537fec5)
This commit is contained in:
Marcelo Fernandez 2018-03-10 16:47:10 -03:00 committed by Hein-Pieter van Braam
parent 3503ee4be6
commit c2e02e2066
2 changed files with 16 additions and 11 deletions

View File

@ -275,9 +275,13 @@ void EditorFileSystem::_scan_filesystem() {
memdelete(d); memdelete(d);
f = FileAccess::open(fscache, FileAccess::WRITE); f = FileAccess::open(fscache, FileAccess::WRITE);
_save_filesystem_cache(new_filesystem, f); if (f == NULL) {
f->close(); ERR_PRINTS("Error writing fscache: " + fscache);
memdelete(f); } else {
_save_filesystem_cache(new_filesystem, f);
f->close();
memdelete(f);
}
scanning = false; scanning = false;
} }
@ -286,9 +290,13 @@ void EditorFileSystem::_save_filesystem_cache() {
String fscache = EditorSettings::get_singleton()->get_project_settings_dir().plus_file("filesystem_cache3"); String fscache = EditorSettings::get_singleton()->get_project_settings_dir().plus_file("filesystem_cache3");
FileAccess *f = FileAccess::open(fscache, FileAccess::WRITE); FileAccess *f = FileAccess::open(fscache, FileAccess::WRITE);
_save_filesystem_cache(filesystem, f); if (f == NULL) {
f->close(); ERR_PRINTS("Error writing fscache: " + fscache);
memdelete(f); } else {
_save_filesystem_cache(filesystem, f);
f->close();
memdelete(f);
}
} }
void EditorFileSystem::_thread_func(void *_userdata) { void EditorFileSystem::_thread_func(void *_userdata) {

View File

@ -942,11 +942,8 @@ void EditorSettings::save() {
Error err = ResourceSaver::save(singleton->config_file_path, singleton); Error err = ResourceSaver::save(singleton->config_file_path, singleton);
if (err != OK) { if (err != OK) {
ERR_PRINT("Can't Save!"); ERR_PRINTS("Error saving editor settings to " + singleton->config_file_path);
return; } else if (OS::get_singleton()->is_stdout_verbose()) {
}
if (OS::get_singleton()->is_stdout_verbose()) {
print_line("EditorSettings Save OK!"); print_line("EditorSettings Save OK!");
} }
} }