diff --git a/src/app/main.cpp b/src/app/main.cpp
index 937f6c7076edefc18eb7d365bec8f33645bee897..6293c29cc04401e5b4fad33bc789f6aaeb224bf8 100644
--- a/src/app/main.cpp
+++ b/src/app/main.cpp
@@ -184,6 +184,11 @@ int main(int argc, char **argv)
     // Must be done before any QSettings class is created
     QSettings::setPath(QSettings::IniFormat, QSettings::SystemScope,
             QCoreApplication::applicationDirPath()+QLatin1String(SHARE_PATH));
+#ifdef Q_OS_MAC
+    // Work around bug in QSettings
+    QSettings::setPath(QSettings::IniFormat, QSettings::UserScope,
+            QDir::homePath()+"/.config");
+#endif
     // keep this in sync with the MainWindow ctor in coreplugin/mainwindow.cpp
     const QSettings settings(QSettings::IniFormat, QSettings::UserScope,
                                  QLatin1String("Nokia"), QLatin1String("QtCreator"));