projects
/
quassel.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Save Core settings synchronously and report errors.
[quassel.git]
/
src
/
core
/
core.cpp
diff --git
a/src/core/core.cpp
b/src/core/core.cpp
index
dadd70a
..
ad9eab8
100644
(file)
--- a/
src/core/core.cpp
+++ b/
src/core/core.cpp
@@
-299,7
+299,9
@@
QString Core::setupCore(const QString &adminUser, const QString &adminPassword,
return tr("Could not setup storage!");
}
return tr("Could not setup storage!");
}
- saveBackendSettings(backend, setupData);
+ if (!saveBackendSettings(backend, setupData)) {
+ return tr("Could not save backend settings, probably a permission problem.");
+ }
quInfo() << qPrintable(tr("Creating admin user..."));
_storage->addUser(adminUser, adminPassword);
quInfo() << qPrintable(tr("Creating admin user..."));
_storage->addUser(adminUser, adminPassword);
@@
-705,7
+707,9
@@
bool Core::selectBackend(const QString &backend)
Storage::State storageState = storage->init(settings);
switch (storageState) {
case Storage::IsReady:
Storage::State storageState = storage->init(settings);
switch (storageState) {
case Storage::IsReady:
- saveBackendSettings(backend, settings);
+ if (!saveBackendSettings(backend, settings)) {
+ qCritical() << qPrintable(QString("Could not save backend settings, probably a permission problem."));
+ }
qWarning() << "Switched backend to:" << qPrintable(backend);
qWarning() << "Backend already initialized. Skipping Migration";
return true;
qWarning() << "Switched backend to:" << qPrintable(backend);
qWarning() << "Backend already initialized. Skipping Migration";
return true;
@@
-723,7
+727,9
@@
bool Core::selectBackend(const QString &backend)
return false;
}
return false;
}
- saveBackendSettings(backend, settings);
+ if (!saveBackendSettings(backend, settings)) {
+ qCritical() << qPrintable(QString("Could not save backend settings, probably a permission problem."));
+ }
qWarning() << "Switched backend to:" << qPrintable(backend);
break;
}
qWarning() << "Switched backend to:" << qPrintable(backend);
break;
}
@@
-739,7
+745,10
@@
bool Core::selectBackend(const QString &backend)
storage = 0;
if (reader->migrateTo(writer)) {
qDebug() << "Migration finished!";
storage = 0;
if (reader->migrateTo(writer)) {
qDebug() << "Migration finished!";
- saveBackendSettings(backend, settings);
+ if (!saveBackendSettings(backend, settings)) {
+ qCritical() << qPrintable(QString("Could not save backend settings, probably a permission problem."));
+ return false;
+ }
return true;
}
return false;
return true;
}
return false;
@@
-886,12
+895,14
@@
AbstractSqlMigrationWriter *Core::getMigrationWriter(Storage *storage)
}
}
-
void
Core::saveBackendSettings(const QString &backend, const QVariantMap &settings)
+
bool
Core::saveBackendSettings(const QString &backend, const QVariantMap &settings)
{
QVariantMap dbsettings;
dbsettings["Backend"] = backend;
dbsettings["ConnectionProperties"] = settings;
{
QVariantMap dbsettings;
dbsettings["Backend"] = backend;
dbsettings["ConnectionProperties"] = settings;
- CoreSettings().setStorageSettings(dbsettings);
+ CoreSettings s = CoreSettings();
+ s.setStorageSettings(dbsettings);
+ return s.sync();
}
}