X-Git-Url: https://git.quassel-irc.org/?p=quassel.git;a=blobdiff_plain;f=src%2Fqtui%2Fqtuiapplication.cpp;h=de9844f291e5b3006b839e31bcad03a77bb92980;hp=0c7f9220c45b9feddcbedc32513648bfcffdfd63;hb=7c9c1b348382b8b77f96a883945c522d32a478d5;hpb=54b63529caa0c113da1bee150e574f9857499326 diff --git a/src/qtui/qtuiapplication.cpp b/src/qtui/qtuiapplication.cpp index 0c7f9220..de9844f2 100644 --- a/src/qtui/qtuiapplication.cpp +++ b/src/qtui/qtuiapplication.cpp @@ -29,6 +29,7 @@ #include "client.h" #include "cliparser.h" #include "qtui.h" +#include "qtuisettings.h" #include "sessionsettings.h" QtUiApplication::QtUiApplication(int &argc, char **argv) @@ -81,8 +82,7 @@ bool QtUiApplication::init() { QSettings newSettings(newFilePath, format); #endif /* Q_WS_MAC */ - if(newSettings.value("Config/Version").toUInt() != 1) { - qWarning() << "\n\n*** IMPORTANT: Config and data file locations have changed. Attempting to auto-migrate your client settings..."; + if(newSettings.value("Config/Version").toUInt() == 0) { # ifdef Q_WS_MAC QString org = "quassel-irc.org"; # else @@ -90,16 +90,25 @@ bool QtUiApplication::init() { # endif QSettings oldSettings(org, "Quassel Client"); if(oldSettings.allKeys().count()) { + qWarning() << "\n\n*** IMPORTANT: Config and data file locations have changed. Attempting to auto-migrate your client settings..."; foreach(QString key, oldSettings.allKeys()) newSettings.setValue(key, oldSettings.value(key)); newSettings.setValue("Config/Version", 1); - qWarning() << "* Your client settings have been migrated to" << newFilePath; + qWarning() << "* Your client settings have been migrated to" << newSettings.fileName(); + qWarning() << "*** Migration completed.\n\n"; } - qWarning() << "*** Migration completed.\n\n"; } // MIGRATION end + // check settings version + // so far, we only have 1 + QtUiSettings s; + if(s.version() != 1) { + qCritical() << "Invalid client settings version, terminating!"; + return false; + } + // session resume QtUi *gui = new QtUi(); Client::init(gui);