diff --git a/src/plugins/git/gerrit/gerritoptionspage.cpp b/src/plugins/git/gerrit/gerritoptionspage.cpp index cc4097d1b63..8665fb4e8c3 100644 --- a/src/plugins/git/gerrit/gerritoptionspage.cpp +++ b/src/plugins/git/gerrit/gerritoptionspage.cpp @@ -70,12 +70,13 @@ QWidget *GerritOptionsPage::createPage(QWidget *parent) void GerritOptionsPage::apply() { if (GerritOptionsWidget *w = m_widget.data()) { - const GerritParameters newParameters = w->parameters(); + GerritParameters newParameters = w->parameters(); if (newParameters != *m_parameters) { - bool sshChanged = m_parameters->ssh != newParameters.ssh; + if (m_parameters->ssh == newParameters.ssh) + newParameters.portFlag = m_parameters->portFlag; + else + newParameters.setPortFlagBySshType(); *m_parameters = newParameters; - if (sshChanged) - m_parameters->setPortFlagBySshType(); m_parameters->toSettings(Core::ICore::instance()->settings()); } }