From 4827ba9dfb28ae2a470a0ad91aec5ee50a4a55af Mon Sep 17 00:00:00 2001 From: Friedemann Kleint Date: Thu, 26 Nov 2009 18:22:30 +0100 Subject: [PATCH] Wizards: Default to home path if empty or invalid --- src/plugins/coreplugin/filemanager.cpp | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/src/plugins/coreplugin/filemanager.cpp b/src/plugins/coreplugin/filemanager.cpp index c7b6127cf1a..7235085a3a5 100644 --- a/src/plugins/coreplugin/filemanager.cpp +++ b/src/plugins/coreplugin/filemanager.cpp @@ -119,7 +119,6 @@ FileManagerPrivate::FileManagerPrivate(QObject *q, QMainWindow *mw) : m_fileWatcher(new QFileSystemWatcher(q)), m_blockActivated(false), m_lastVisitedDirectory(QDir::currentPath()), - m_projectsDirectory(Utils::PathChooser::homePath()), #ifdef Q_OS_MAC // Creator is in bizarre places when launched via finder. m_useProjectsDirectory(true) #else @@ -152,7 +151,13 @@ FileManager::FileManager(QMainWindow *mw) } } const QString directoryGroup = QLatin1String(directoryGroupC) + QLatin1Char('/'); - d->m_projectsDirectory = s->value(directoryGroup + QLatin1String(projectDirectoryKeyC), QString()).toString(); + const QString settingsProjectDir = s->value(directoryGroup + QLatin1String(projectDirectoryKeyC), + QString()).toString(); + if (!settingsProjectDir.isEmpty() && QFileInfo(settingsProjectDir).isDir()) { + d->m_projectsDirectory = settingsProjectDir; + } else { + d->m_projectsDirectory = Utils::PathChooser::homePath(); + } d->m_useProjectsDirectory = s->value(directoryGroup + QLatin1String(useProjectDirectoryKeyC), d->m_useProjectsDirectory).toBool(); }