From 13067a7d9cb1acd74bc936c56b52aa76b7da5d38 Mon Sep 17 00:00:00 2001 From: Orgad Shaneh Date: Wed, 29 Sep 2021 15:05:24 +0300 Subject: [PATCH] CommandLine: Find executable in PATH when it is relative Task-number: QTCREATORBUG-26329 Change-Id: Ie7b30ea5c73d11e4a9961bdaa732ee36e0e377e7 Reviewed-by: hjk --- src/libs/utils/commandline.cpp | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/libs/utils/commandline.cpp b/src/libs/utils/commandline.cpp index 409c85f04da..ecea6934cfb 100644 --- a/src/libs/utils/commandline.cpp +++ b/src/libs/utils/commandline.cpp @@ -647,8 +647,10 @@ void ProcessArgs::addArgs(QString *args, const QStringList &inArgs) bool ProcessArgs::prepareCommand(const CommandLine &cmdLine, QString *outCmd, ProcessArgs *outArgs, const Environment *env, const FilePath *pwd) { - const FilePath executable = cmdLine.executable(); + FilePath executable = cmdLine.executable(); const QString arguments = cmdLine.arguments(); + if (env && executable.isRelativePath()) + executable = env->searchInPath(executable.toString()); ProcessArgs::SplitError err; *outArgs = ProcessArgs::prepareArgs(arguments, &err, executable.osType(), env, pwd); if (err == ProcessArgs::SplitOk) {