From ab7225c6d23644204ac014d9485aaef28a615fcd Mon Sep 17 00:00:00 2001 From: Marco Bubke Date: Sat, 27 Jul 2024 18:40:55 +0200 Subject: [PATCH] Vcpkg: Prefer environment variable over executable path The executable can be in a different directory. Change-Id: Ie630d464734d1ef9d0a9e1adfb8da8e56c67b5dd Reviewed-by: Alessandro Portale --- src/plugins/vcpkg/vcpkgsettings.cpp | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/src/plugins/vcpkg/vcpkgsettings.cpp b/src/plugins/vcpkg/vcpkgsettings.cpp index 160f57ef6ed..a6b43fdbdb3 100644 --- a/src/plugins/vcpkg/vcpkgsettings.cpp +++ b/src/plugins/vcpkg/vcpkgsettings.cpp @@ -35,10 +35,12 @@ VcpkgSettings::VcpkgSettings() vcpkgRoot.setSettingsKey("VcpkgRoot"); vcpkgRoot.setExpectedKind(PathChooser::ExistingDirectory); - FilePath defaultPath = Environment::systemEnvironment().searchInPath(Constants::VCPKG_COMMAND) - .parentDir(); + FilePath defaultPath = FilePath::fromUserInput( + qtcEnvironmentVariable(Constants::ENVVAR_VCPKG_ROOT)); + if (!defaultPath.isDir()) - defaultPath = FilePath::fromUserInput(qtcEnvironmentVariable(Constants::ENVVAR_VCPKG_ROOT)); + defaultPath = Environment::systemEnvironment().searchInPath(Constants::VCPKG_COMMAND).parentDir(); + if (defaultPath.isDir()) vcpkgRoot.setDefaultPathValue(defaultPath);