Fix in-memory databases bein read only

This problem was introduced in 5c727e8b70.
This commit is contained in:
Martin Kleusberg
2019-03-03 12:17:37 +01:00
parent fa203c4c61
commit bede43f76c

View File

@@ -168,10 +168,15 @@ bool DBBrowserDB::open(const QString& db, bool readOnly)
if(Settings::getValue("extensions", "disableregex").toBool() == false)
sqlite3_create_function(_db, "REGEXP", 2, SQLITE_UTF8, nullptr, regexp, nullptr, nullptr);
// Check if file is read only
QFileInfo fi(db);
QFileInfo fid(fi.absoluteDir().absolutePath());
isReadOnly = readOnly || !fi.isWritable() || !fid.isWritable();
// Check if file is read only. In-memory databases are never read only
if(db == ":memory:")
{
isReadOnly = false;
} else {
QFileInfo fi(db);
QFileInfo fid(fi.absoluteDir().absolutePath());
isReadOnly = readOnly || !fi.isWritable() || !fid.isWritable();
}
// Load extensions
loadExtensionsFromSettings();