putil: fix asserts when model-cache-dir cannot be created

Fixes #790
This commit is contained in:
rdb 2020-02-29 15:08:05 +01:00
parent f98c14c290
commit 1c357f32ca
2 changed files with 9 additions and 4 deletions

View File

@ -497,8 +497,7 @@ make_directory_full(const Filename &filename) {
// Now make the last one, and check the return value. // Now make the last one, and check the return value.
PT(VirtualFile) result = do_get_file(filename, OF_make_directory); PT(VirtualFile) result = do_get_file(filename, OF_make_directory);
_lock.unlock(); _lock.unlock();
nassertr_always(result != nullptr, false); return (result != nullptr) ? result->is_directory() : false;
return result->is_directory();
} }
/** /**

View File

@ -133,10 +133,16 @@ set_root(const Filename &root) {
delete _index; delete _index;
_index = new BamCacheIndex; _index = new BamCacheIndex;
_index_stale_since = 0; _index_stale_since = 0;
if (!vfs->is_directory(_root)) {
util_cat.error()
<< "Unable to make directory " << _root << ", caching disabled.\n";
_active = false;
return;
}
read_index(); read_index();
check_cache_size(); check_cache_size();
nassertv(vfs->is_directory(_root));
} }
/** /**