From a478b9682e36fea5825f76d3239f94ce52681c1a Mon Sep 17 00:00:00 2001 From: hjk Date: Wed, 26 Jul 2023 12:15:28 +0200 Subject: [PATCH] Utils: Introduce a helper function to prepend or set paths This is meant for cases where we get a raw ':'/';' separated list of directories. Change-Id: I9ef8888f71700d553213949a867f62dec763054c Reviewed-by: Marcus Tillmanns --- src/libs/utils/environment.cpp | 5 +++++ src/libs/utils/environment.h | 1 + 2 files changed, 6 insertions(+) diff --git a/src/libs/utils/environment.cpp b/src/libs/utils/environment.cpp index 2fe99fb97f5..4af5399a7af 100644 --- a/src/libs/utils/environment.cpp +++ b/src/libs/utils/environment.cpp @@ -149,6 +149,11 @@ void Environment::prependOrSetPath(const FilePath &value) prependOrSet("PATH", value.nativePath(), OsSpecificAspects::pathListSeparator(osType())); } +void Environment::prependOrSetPath(const QString &directories) +{ + prependOrSet("PATH", directories, OsSpecificAspects::pathListSeparator(osType())); +} + void Environment::appendOrSet(const QString &key, const QString &value, const QString &sep) { addItem(Item{std::in_place_index_t(), key, value, sep}); diff --git a/src/libs/utils/environment.h b/src/libs/utils/environment.h index 479778e4ce7..06ac5d20a5c 100644 --- a/src/libs/utils/environment.h +++ b/src/libs/utils/environment.h @@ -48,6 +48,7 @@ public: void appendOrSetPath(const FilePath &value); void prependOrSetPath(const FilePath &value); + void prependOrSetPath(const QString &directories); // Could be several ':'/';' separated entries. void prependOrSetLibrarySearchPath(const FilePath &value); void prependOrSetLibrarySearchPaths(const FilePaths &values);