diff --git a/src/plugins/git/gerrit/gerritoptionspage.cpp b/src/plugins/git/gerrit/gerritoptionspage.cpp index 54d0451d200cbdc4b0170a27b4f9de0a9f457246..50466e695da718105ab9cb0b012c219d4c30afe0 100644 --- a/src/plugins/git/gerrit/gerritoptionspage.cpp +++ b/src/plugins/git/gerrit/gerritoptionspage.cpp @@ -73,6 +73,7 @@ void GerritOptionsPage::apply() const GerritParameters newParameters = w->parameters(); if (newParameters != *m_parameters) { *m_parameters = newParameters; + m_parameters->setPortFlagBySshType(); m_parameters->toSettings(Core::ICore::instance()->settings()); } } @@ -124,7 +125,6 @@ GerritParameters GerritOptionsWidget::parameters() const result.port = m_portSpinBox->value(); result.additionalQueries = m_additionalQueriesLineEdit->text().trimmed(); result.https = m_httpsCheckBox->isChecked(); - result.setPortFlagBySshType(); return result; } diff --git a/src/plugins/git/gerrit/gerritparameters.cpp b/src/plugins/git/gerrit/gerritparameters.cpp index 2ab0b787c2a1c8783f2bcc4eca016f5049643d1c..7286e6b5797584a41d0f598ff2e66ad0174117c4 100644 --- a/src/plugins/git/gerrit/gerritparameters.cpp +++ b/src/plugins/git/gerrit/gerritparameters.cpp @@ -89,9 +89,12 @@ static inline QString detectSsh() void GerritParameters::setPortFlagBySshType() { - const QString version = Utils::PathChooser::toolVersion(ssh, QStringList(QLatin1String("-V"))); - portFlag = (version.contains(QLatin1String("plink"), Qt::CaseInsensitive)) ? - QLatin1String("-P") : QLatin1String(defaultPortFlag); + bool isPlink = false; + if (!ssh.isEmpty()) { + const QString version = Utils::PathChooser::toolVersion(ssh, QStringList(QLatin1String("-V"))); + isPlink = version.contains(QLatin1String("plink"), Qt::CaseInsensitive); + } + portFlag = isPlink ? QLatin1String("-P") : QLatin1String(defaultPortFlag); } GerritParameters::GerritParameters()