diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.cpp b/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.cpp index 602cbe2c47f675dd2ff382465b80bd8238ef059d..011e9644e9e31fc29e8f2dc66cc324dac2fd1a21 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.cpp +++ b/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.cpp @@ -98,13 +98,16 @@ MaemoSettingsWidget::MaemoSettingsWidget(QWidget *parent) m_ui(new Ui_MaemoSettingsWidget), m_devConfs(MaemoDeviceConfigurations::instance().devConfigs()), m_nameValidator(new NameValidator(m_devConfs)), - m_keyDeployer(0) + m_keyDeployer(0), + m_saveSettingsRequested(false) { initGui(); } MaemoSettingsWidget::~MaemoSettingsWidget() { + if (m_saveSettingsRequested) + MaemoDeviceConfigurations::instance().setDevConfigs(m_devConfs); } QString MaemoSettingsWidget::searchKeywords() const @@ -225,7 +228,8 @@ void MaemoSettingsWidget::fillInValues() void MaemoSettingsWidget::saveSettings() { - MaemoDeviceConfigurations::instance().setDevConfigs(m_devConfs); + // We must defer this step because of a stupid bug on MacOS. See QTCREATORBUG-1675. + m_saveSettingsRequested = true; } MaemoDeviceConfig &MaemoSettingsWidget::currentConfig() diff --git a/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.h b/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.h index e8c676696a03f816ad22dced1f6d5fb9e205b980..d7a195f392824520e0e342f0431dbbe5ab524e0a 100644 --- a/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.h +++ b/src/plugins/qt4projectmanager/qt-maemo/maemosettingswidget.h @@ -103,6 +103,7 @@ private: MaemoDeviceConfig m_lastConfigSim; NameValidator * const m_nameValidator; MaemoSshRunner *m_keyDeployer; + bool m_saveSettingsRequested; }; } // namespace Internal