refactor: Return enum in LockDirectory

This makes it easier to add more Error cases in the future. Also, add
missing util namespace.
This commit is contained in:
MarcoFalke
2023-07-14 11:26:45 +02:00
parent 64879f4c03
commit fa0afe7408
5 changed files with 48 additions and 33 deletions

View File

@@ -1031,10 +1031,12 @@ static bool LockDataDirectory(bool probeOnly)
if (!DirIsWritable(datadir)) {
return InitError(strprintf(_("Cannot write to data directory '%s'; check permissions."), fs::PathToString(datadir)));
}
if (!LockDirectory(datadir, ".lock", probeOnly)) {
switch (util::LockDirectory(datadir, ".lock", probeOnly)) {
case util::LockResult::ErrorLock:
return InitError(strprintf(_("Cannot obtain a lock on data directory %s. %s is probably already running."), fs::PathToString(datadir), PACKAGE_NAME));
}
return true;
case util::LockResult::Success: return true;
} // no default case, so the compiler can warn about missing cases
assert(false);
}
bool AppInitSanityChecks(const kernel::Context& kernel)