diff --git a/src/core/database.cpp b/src/core/database.cpp index fecc66e88..369d0edf2 100644 --- a/src/core/database.cpp +++ b/src/core/database.cpp @@ -519,11 +519,13 @@ void Database::DoBackup() { QSqlDatabase db(this->Connect()); + if (!db.isOpen()) return; + // Before we overwrite anything, make sure the database is not corrupt QMutexLocker l(&mutex_); - const bool ok = IntegrityCheck(db); - if (ok) { + const bool ok = IntegrityCheck(db); + if (ok && SchemaVersion(&db) == kSchemaVersion) { BackupFile(db.databaseName()); }