From a36c59a4911a7db525f6b03dc98fac5adde163b4 Mon Sep 17 00:00:00 2001 From: Rob Mensching Date: Thu, 7 Jan 2021 15:12:13 -0800 Subject: Support environment variables with parens in the preprocessor Fixes wixtoolset/issues#4484 --- src/WixToolset.Core/ExtensibilityServices/PreprocessHelper.cs | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/WixToolset.Core') diff --git a/src/WixToolset.Core/ExtensibilityServices/PreprocessHelper.cs b/src/WixToolset.Core/ExtensibilityServices/PreprocessHelper.cs index df301196..041c7d5d 100644 --- a/src/WixToolset.Core/ExtensibilityServices/PreprocessHelper.cs +++ b/src/WixToolset.Core/ExtensibilityServices/PreprocessHelper.cs @@ -386,6 +386,14 @@ namespace WixToolset.Core.ExtensibilityServices } } + // Environment variables may contain parens so if it looks + // like a function, check to see if the environment variable + // prefix was explicitly provided. + if (isFunction && remainder.StartsWith("(env.", StringComparison.Ordinal)) + { + isFunction = false; + } + // move the currentPosition to the closing paren currentPosition += closingParenPosition; -- cgit v1.2.3-55-g6feb