forked from qt-creator/qt-creator
QbsProjectManager: Do not store expanded qbs executable path
... unless it was explicitly set by the user. Otherwise, e.g. the derived Creator-internal path will end up verbatim in the settings, and this value will be wrong when switching the build dir etc. Change-Id: I89818e683f403e28855934e42b56f59892f260cc Reviewed-by: hjk <hjk@qt.io>
This commit is contained in:
@@ -103,6 +103,11 @@ void QbsSettings::setSettingsData(const QbsSettingsData &settings)
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
QbsSettingsData QbsSettings::rawSettingsData()
|
||||||
|
{
|
||||||
|
return instance().m_settings;
|
||||||
|
}
|
||||||
|
|
||||||
QbsSettings::QbsSettings()
|
QbsSettings::QbsSettings()
|
||||||
{
|
{
|
||||||
loadSettings();
|
loadSettings();
|
||||||
@@ -148,8 +153,8 @@ public:
|
|||||||
|
|
||||||
void apply()
|
void apply()
|
||||||
{
|
{
|
||||||
QbsSettingsData settings;
|
QbsSettingsData settings = QbsSettings::rawSettingsData();
|
||||||
if (m_qbsExePathChooser.isValid())
|
if (m_qbsExePathChooser.fileName() != QbsSettings::qbsExecutableFilePath())
|
||||||
settings.qbsExecutableFilePath = m_qbsExePathChooser.fileName();
|
settings.qbsExecutableFilePath = m_qbsExePathChooser.fileName();
|
||||||
settings.defaultInstallDirTemplate = m_defaultInstallDirLineEdit.text();
|
settings.defaultInstallDirTemplate = m_defaultInstallDirLineEdit.text();
|
||||||
settings.useCreatorSettings = m_settingsDirCheckBox.isChecked();
|
settings.useCreatorSettings = m_settingsDirCheckBox.isChecked();
|
||||||
|
@@ -54,6 +54,7 @@ public:
|
|||||||
static QString qbsSettingsBaseDir();
|
static QString qbsSettingsBaseDir();
|
||||||
|
|
||||||
static void setSettingsData(const QbsSettingsData &settings);
|
static void setSettingsData(const QbsSettingsData &settings);
|
||||||
|
static QbsSettingsData rawSettingsData();
|
||||||
|
|
||||||
signals:
|
signals:
|
||||||
void settingsChanged();
|
void settingsChanged();
|
||||||
|
Reference in New Issue
Block a user