db/simple: handle Database::Open() exceptions in Mount()
This commit is contained in:
@ -471,10 +471,15 @@ SimpleDatabase::Mount(const char *local_uri, const char *storage_uri,
|
|||||||
auto db = new SimpleDatabase(AllocatedPath::Build(cache_path,
|
auto db = new SimpleDatabase(AllocatedPath::Build(cache_path,
|
||||||
name_fs.c_str()),
|
name_fs.c_str()),
|
||||||
compress);
|
compress);
|
||||||
|
try {
|
||||||
if (!db->Open(error)) {
|
if (!db->Open(error)) {
|
||||||
delete db;
|
delete db;
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
} catch (...) {
|
||||||
|
delete db;
|
||||||
|
throw;
|
||||||
|
}
|
||||||
|
|
||||||
// TODO: update the new database instance?
|
// TODO: update the new database instance?
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user