From 8d69aafce8d24ad62b46b37736f902e657f5341d Mon Sep 17 00:00:00 2001 From: Ankit Jain Date: Wed, 23 Feb 2011 21:26:28 +0530 Subject: [PATCH] [xbuild] Fix bug #674337. Use appropriate path separator for handling environment variable MSBuildExtensionsPath. --- .../Microsoft.Build.BuildEngine/Import.cs | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs index 9088babcfec..951f4f46fd4 100644 --- a/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs +++ b/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Import.cs @@ -44,6 +44,7 @@ namespace Microsoft.Build.BuildEngine { static string DotConfigExtensionsPath = Path.Combine (Environment.GetFolderPath (Environment.SpecialFolder.ApplicationData), Path.Combine ("xbuild", "tasks")); const string MacOSXExternalXBuildDir = "/Library/Frameworks/Mono.framework/External/xbuild"; + static string PathSeparatorAsString = Path.PathSeparator.ToString (); internal Import (XmlElement importElement, Project project, ImportedProject originalProject) { @@ -119,14 +120,14 @@ namespace Microsoft.Build.BuildEngine { // project. string envvar = Environment.GetEnvironmentVariable (property_name); - envvar = String.Join (":", new string [] { + envvar = String.Join (PathSeparatorAsString, new string [] { (envvar ?? String.Empty), // For mac osx, look in the 'External' dir on macosx, // see bug #663180 MSBuildUtils.RunningOnMac ? MacOSXExternalXBuildDir : String.Empty, DotConfigExtensionsPath}); - string [] paths = envvar.Split (new char [] {':'}, StringSplitOptions.RemoveEmptyEntries); + string [] paths = envvar.Split (new char [] {Path.PathSeparator}, StringSplitOptions.RemoveEmptyEntries); foreach (string path in paths) { if (!Directory.Exists (path)) { project.ParentEngine.LogMessage (MessageImportance.Low, "Extension path '{0}' not found, ignoring.", path); -- 2.25.1