diff --git a/kate/session/katesessionmanager.cpp b/kate/session/katesessionmanager.cpp --- a/kate/session/katesessionmanager.cpp +++ b/kate/session/katesessionmanager.cpp @@ -173,7 +173,6 @@ void KateSessionManager::loadSession(const KateSession::Ptr &session) const { // open the new session - KSharedConfigPtr sharedConfig = KSharedConfig::openConfig(); KConfig *sc = session->config(); const bool loadDocs = !session->isAnonymous(); // do not load docs for new sessions @@ -187,38 +186,38 @@ } // window config - KConfigGroup c(sharedConfig, "General"); - - if (c.readEntry("Restore Window Configuration", true)) { - KConfig *cfg = sc; - bool delete_cfg = false; - // a new, named session, read settings of the default session. - if (! sc->hasGroup("Open MainWindows")) { - delete_cfg = true; - cfg = new KConfig(anonymousSessionFile(), KConfig::SimpleConfig); - } + const bool restoreWindowConfig = (KConfigGroup(KSharedConfig::openConfig(), "General")).readEntry("Restore Window Configuration", true); - int wCount = cfg->group("Open MainWindows").readEntry("Count", 1); + KConfig *cfg = sc; + bool delete_cfg = false; + // a new, named session, read settings of the default session. + if (! sc->hasGroup("Open MainWindows")) { + delete_cfg = true; + cfg = new KConfig(anonymousSessionFile(), KConfig::SimpleConfig); + } - for (int i = 0; i < wCount; ++i) { - if (i >= KateApp::self()->mainWindowsCount()) { - KateApp::self()->newMainWindow(cfg, QStringLiteral("MainWindow%1").arg(i)); - } else { - KateApp::self()->mainWindow(i)->readProperties(KConfigGroup(cfg, QStringLiteral("MainWindow%1").arg(i))); - } + int wCount = cfg->group("Open MainWindows").readEntry("Count", 1); - KateApp::self()->mainWindow(i)->restoreWindowConfig(KConfigGroup(cfg, QStringLiteral("MainWindow%1 Settings").arg(i))); + for (int i = 0; i < wCount; ++i) { + if (i >= KateApp::self()->mainWindowsCount()) { + KateApp::self()->newMainWindow(cfg, QStringLiteral("MainWindow%1").arg(i)); + } else { + KateApp::self()->mainWindow(i)->readProperties(KConfigGroup(cfg, QStringLiteral("MainWindow%1").arg(i))); } - if (delete_cfg) { - delete cfg; + if (restoreWindowConfig) { + KateApp::self()->mainWindow(i)->restoreWindowConfig(KConfigGroup(cfg, QStringLiteral("MainWindow%1 Settings").arg(i))); } + } - // remove mainwindows we need no longer... - if (wCount > 0) { - while (wCount < KateApp::self()->mainWindowsCount()) { - delete KateApp::self()->mainWindow(KateApp::self()->mainWindowsCount() - 1); - } + if (delete_cfg) { + delete cfg; + } + + // remove mainwindows we need no longer... + if (wCount > 0) { + while (wCount < KateApp::self()->mainWindowsCount()) { + delete KateApp::self()->mainWindow(KateApp::self()->mainWindowsCount() - 1); } } }