From 8abfea16ecfc797cc0418ccf4e592a2cea345937 Mon Sep 17 00:00:00 2001 From: Chet Husk Date: Fri, 25 Jun 2021 13:18:11 -0500 Subject: [PATCH 1/2] use path separator instead of hardcoded semicolon --- .../DependencyManager/NativeDllResolveHandler.fs | 15 ++++++++------- 1 file changed, 8 insertions(+), 7 deletions(-) diff --git a/src/fsharp/DependencyManager/NativeDllResolveHandler.fs b/src/fsharp/DependencyManager/NativeDllResolveHandler.fs index 29d591393b4..90fc12597f6 100644 --- a/src/fsharp/DependencyManager/NativeDllResolveHandler.fs +++ b/src/fsharp/DependencyManager/NativeDllResolveHandler.fs @@ -111,25 +111,26 @@ type NativeDllResolveHandler (nativeProbingRoots: NativeResolutionProbe) = else None - let appendSemiColon (p: string) = - if not(p.EndsWith(";", StringComparison.OrdinalIgnoreCase)) then - p + ";" + let appendPathSeparator (p: string) = + let separator = string string System.IO.Path.PathSeparator + if not(p.EndsWith(separator, StringComparison.OrdinalIgnoreCase)) then + p + separator else p let addedPaths = ConcurrentBag() let addProbeToProcessPath probePath = - let probe = appendSemiColon probePath - let path = appendSemiColon (Environment.GetEnvironmentVariable("PATH")) + let probe = appendPathSeparator probePath + let path = appendPathSeparator (Environment.GetEnvironmentVariable("PATH")) if not (path.Contains(probe)) then Environment.SetEnvironmentVariable("PATH", path + probe) addedPaths.Add probe let removeProbeFromProcessPath probePath = if not(String.IsNullOrWhiteSpace(probePath)) then - let probe = appendSemiColon probePath - let path = appendSemiColon (Environment.GetEnvironmentVariable("PATH")) + let probe = appendPathSeparator probePath + let path = appendPathSeparator (Environment.GetEnvironmentVariable("PATH")) if path.Contains(probe) then Environment.SetEnvironmentVariable("PATH", path.Replace(probe, "")) member internal _.RefreshPathsInEnvironment(roots: string seq) = From 1a3efb0ecd199853a35945aa318ea5e2cdf61d28 Mon Sep 17 00:00:00 2001 From: Chet Husk Date: Mon, 28 Jun 2021 08:52:29 -0500 Subject: [PATCH 2/2] Update src/fsharp/DependencyManager/NativeDllResolveHandler.fs Co-authored-by: Vlad Zarytovskii --- src/fsharp/DependencyManager/NativeDllResolveHandler.fs | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/fsharp/DependencyManager/NativeDllResolveHandler.fs b/src/fsharp/DependencyManager/NativeDllResolveHandler.fs index 90fc12597f6..9397a04eb3e 100644 --- a/src/fsharp/DependencyManager/NativeDllResolveHandler.fs +++ b/src/fsharp/DependencyManager/NativeDllResolveHandler.fs @@ -112,7 +112,7 @@ type NativeDllResolveHandler (nativeProbingRoots: NativeResolutionProbe) = None let appendPathSeparator (p: string) = - let separator = string string System.IO.Path.PathSeparator + let separator = string System.IO.Path.PathSeparator if not(p.EndsWith(separator, StringComparison.OrdinalIgnoreCase)) then p + separator else