diff --git a/src/Build/BackEnd/Shared/BuildRequestConfiguration.cs b/src/Build/BackEnd/Shared/BuildRequestConfiguration.cs index 7108a74cca6..f90f99d14d3 100644 --- a/src/Build/BackEnd/Shared/BuildRequestConfiguration.cs +++ b/src/Build/BackEnd/Shared/BuildRequestConfiguration.cs @@ -299,7 +299,11 @@ public bool IsTraversal { if (!_isTraversalProject.HasValue) { - if (String.Equals(Path.GetFileName(ProjectFullPath), "dirs.proj", StringComparison.OrdinalIgnoreCase)) +#if NET471_OR_GREATER + if (MemoryExtensions.Equals(Microsoft.IO.Path.GetFileName(ProjectFullPath.AsSpan()), "dirs.proj".AsSpan(), StringComparison.OrdinalIgnoreCase)) +#else + if (MemoryExtensions.Equals(Path.GetFileName(ProjectFullPath.AsSpan()), "dirs.proj", StringComparison.OrdinalIgnoreCase)) +#endif { // dirs.proj are assumed to be traversals _isTraversalProject = true; diff --git a/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs b/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs index 0e4c160336f..dc2383d7034 100644 --- a/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs +++ b/src/Build/BackEnd/TaskExecutionHost/TaskExecutionHost.cs @@ -1223,15 +1223,18 @@ private void EnsureParameterInitialized(TaskPropertyInfo parameter, Lookup looku string taskAndParameterName = _taskName + "_" + parameter.Name; string key = "DisableLogTaskParameter_" + taskAndParameterName; - string metadataKey = "DisableLogTaskParameterItemMetadata_" + taskAndParameterName; if (string.Equals(lookup.GetProperty(key)?.EvaluatedValue, "true", StringComparison.OrdinalIgnoreCase)) { parameter.Log = false; } - else if (string.Equals(lookup.GetProperty(metadataKey)?.EvaluatedValue, "true", StringComparison.OrdinalIgnoreCase)) + else { - parameter.LogItemMetadata = false; + string metadataKey = "DisableLogTaskParameterItemMetadata_" + taskAndParameterName; + if (string.Equals(lookup.GetProperty(metadataKey)?.EvaluatedValue, "true", StringComparison.OrdinalIgnoreCase)) + { + parameter.LogItemMetadata = false; + } } } diff --git a/src/Tasks/SystemState.cs b/src/Tasks/SystemState.cs index cf3ad3dad96..f85dc93eb7e 100644 --- a/src/Tasks/SystemState.cs +++ b/src/Tasks/SystemState.cs @@ -456,9 +456,7 @@ private AssemblyNameExtension GetAssemblyName(string path) // then we can short-circuit the File IO involved with GetAssemblyName() if (redistList != null) { - string extension = Path.GetExtension(path); - - if (string.Equals(extension, ".dll", StringComparison.OrdinalIgnoreCase)) + if (!string.IsNullOrEmpty(path) && path.EndsWith(".dll", StringComparison.OrdinalIgnoreCase)) { IEnumerable assemblyNames = redistList.FindAssemblyNameFromSimpleName( Path.GetFileNameWithoutExtension(path));