From 968e47194cca131afa8caab4abca9e6766ed7f59 Mon Sep 17 00:00:00 2001 From: Christian Stenger Date: Mon, 3 Jun 2024 09:50:42 +0200 Subject: [PATCH] VCS: Fix handling of default executable We set the executable by default to a single command which should be used as found in PATH. Although listed valid in settings some commands refuse to run when we validate the command before running without taking their full path into account. Use the full path of vcs binaries internally to avoid problems but still display single command if set. Change-Id: If8677b531c5534d27c19557ed36fa780a248558f Reviewed-by: Marcus Tillmanns Reviewed-by: Orgad Shaneh --- src/plugins/bazaar/bazaarplugin.cpp | 2 +- src/plugins/cvs/cvsplugin.cpp | 2 +- src/plugins/fossil/fossilclient.cpp | 2 +- src/plugins/mercurial/mercurialplugin.cpp | 2 +- src/plugins/subversion/subversionplugin.cpp | 2 +- 5 files changed, 5 insertions(+), 5 deletions(-) diff --git a/src/plugins/bazaar/bazaarplugin.cpp b/src/plugins/bazaar/bazaarplugin.cpp index 47c4bd8f8c5..31d9c243906 100644 --- a/src/plugins/bazaar/bazaarplugin.cpp +++ b/src/plugins/bazaar/bazaarplugin.cpp @@ -884,7 +884,7 @@ bool BazaarPluginPrivate::managesFile(const FilePath &workingDirectory, const QS bool BazaarPluginPrivate::isConfigured() const { - const FilePath binary = settings().binaryPath(); + const FilePath binary = settings().binaryPath.effectiveBinary(); return !binary.isEmpty() && binary.isExecutableFile(); } diff --git a/src/plugins/cvs/cvsplugin.cpp b/src/plugins/cvs/cvsplugin.cpp index 01c47b1646f..6a25b29fa04 100644 --- a/src/plugins/cvs/cvsplugin.cpp +++ b/src/plugins/cvs/cvsplugin.cpp @@ -339,7 +339,7 @@ bool CvsPluginPrivate::isVcsFileOrDirectory(const Utils::FilePath &filePath) con bool CvsPluginPrivate::isConfigured() const { - const FilePath binary = settings().binaryPath(); + const FilePath binary = settings().binaryPath.effectiveBinary(); if (binary.isEmpty()) return false; QFileInfo fi = binary.toFileInfo(); diff --git a/src/plugins/fossil/fossilclient.cpp b/src/plugins/fossil/fossilclient.cpp index 662785930d4..2c077a3b591 100644 --- a/src/plugins/fossil/fossilclient.cpp +++ b/src/plugins/fossil/fossilclient.cpp @@ -766,7 +766,7 @@ unsigned int FossilClient::binaryVersion() const static unsigned int cachedBinaryVersion = 0; static FilePath cachedBinaryPath; - const FilePath currentBinaryPath = settings().binaryPath(); + const FilePath currentBinaryPath = settings().binaryPath.effectiveBinary(); if (currentBinaryPath.isEmpty()) return 0; diff --git a/src/plugins/mercurial/mercurialplugin.cpp b/src/plugins/mercurial/mercurialplugin.cpp index 39b3fe44320..6d7a1ef7302 100644 --- a/src/plugins/mercurial/mercurialplugin.cpp +++ b/src/plugins/mercurial/mercurialplugin.cpp @@ -669,7 +669,7 @@ bool MercurialPluginPrivate::managesFile(const FilePath &workingDirectory, const bool MercurialPluginPrivate::isConfigured() const { - const FilePath binary = settings().binaryPath(); + const FilePath binary = settings().binaryPath.effectiveBinary(); if (binary.isEmpty()) return false; QFileInfo fi = binary.toFileInfo(); diff --git a/src/plugins/subversion/subversionplugin.cpp b/src/plugins/subversion/subversionplugin.cpp index b28224a8667..36a5455a629 100644 --- a/src/plugins/subversion/subversionplugin.cpp +++ b/src/plugins/subversion/subversionplugin.cpp @@ -1067,7 +1067,7 @@ bool SubversionPluginPrivate::isVcsFileOrDirectory(const FilePath &filePath) con bool SubversionPluginPrivate::isConfigured() const { - const FilePath binary = settings().binaryPath(); + const FilePath binary = settings().binaryPath.effectiveBinary(); if (binary.isEmpty()) return false; QFileInfo fi = binary.toFileInfo();