Combine BerkeleyEnvironment::Verify into BerkeleyDatabase::Verify

pull/764/head
Andrew Chow 4 years ago
parent 9d4b3d86b6
commit 65fb8807ac

@ -232,16 +232,6 @@ BerkeleyEnvironment::BerkeleyEnvironment()
fMockDb = true;
}
bool BerkeleyEnvironment::Verify(const std::string& strFile)
{
LOCK(cs_db);
assert(mapFileUseCount.count(strFile) == 0);
Db db(dbenv.get(), 0);
int result = db.verify(strFile.c_str(), nullptr, nullptr, 0);
return result == 0;
}
BerkeleyBatch::SafeDbt::SafeDbt()
{
m_dbt.set_flags(DB_DBT_MALLOC);
@ -295,7 +285,12 @@ bool BerkeleyDatabase::Verify(bilingual_str& errorStr)
if (fs::exists(file_path))
{
if (!env->Verify(strFile)) {
LOCK(cs_db);
assert(env->mapFileUseCount.count(strFile) == 0);
Db db(env->dbenv.get(), 0);
int result = db.verify(strFile.c_str(), nullptr, nullptr, 0);
if (result != 0) {
errorStr = strprintf(_("%s corrupt. Try using the wallet tool bitcoin-wallet to salvage or restoring a backup."), file_path);
return false;
}

@ -67,8 +67,6 @@ public:
bool IsDatabaseLoaded(const std::string& db_filename) const { return m_databases.find(db_filename) != m_databases.end(); }
fs::path Directory() const { return strPath; }
bool Verify(const std::string& strFile);
bool Open(bilingual_str& error);
void Close();
void Flush(bool fShutdown);

Loading…
Cancel
Save