diff --git a/src/plugins/git/gitclient.cpp b/src/plugins/git/gitclient.cpp index 90bd390e27f..67b456755bb 100644 --- a/src/plugins/git/gitclient.cpp +++ b/src/plugins/git/gitclient.cpp @@ -63,12 +63,13 @@ #include #include -#include -#include -#include +#include #include +#include #include +#include #include +#include #include #include @@ -401,6 +402,9 @@ GitClient::GitClient(GitSettings *settings) : { QTC_CHECK(settings); connect(Core::ICore::instance(), SIGNAL(saveSettingsRequested()), this, SLOT(saveSettings())); + m_gitQtcEditor = QString::fromLatin1("\"%1\" -client -block -pid %2") + .arg(QCoreApplication::applicationFilePath()) + .arg(QCoreApplication::applicationPid()); } GitClient::~GitClient() @@ -1538,6 +1542,7 @@ QProcessEnvironment GitClient::processEnvironment() const && settings()->boolValue(GitSettings::winSetHomeEnvironmentKey)) { environment.insert(QLatin1String("HOME"), QDir::toNativeSeparators(QDir::homePath())); } + environment.insert(QLatin1String("GIT_EDITOR"), m_gitQtcEditor); // Set up SSH and C locale (required by git using perl). VcsBase::VcsBasePlugin::setProcessEnvironment(&environment, false); return environment; diff --git a/src/plugins/git/gitclient.h b/src/plugins/git/gitclient.h index 59dd9bb3af5..63344a8562a 100644 --- a/src/plugins/git/gitclient.h +++ b/src/plugins/git/gitclient.h @@ -341,6 +341,7 @@ private: const QString m_msgWait; QSignalMapper *m_repositoryChangedSignalMapper; GitSettings *m_settings; + QString m_gitQtcEditor; }; } // namespace Internal