From db71cb635cb4d1a82bafaec63c65f1b935b80be8 Mon Sep 17 00:00:00 2001 From: Matt Ward Date: Fri, 13 Apr 2018 17:49:39 +0100 Subject: [Core] Rework fix for wildcard expanding on saving a project No need to evaluate the MSBuild item property since the evaluated property can be matched when the unevaluated property contains '%' characters. This is a re-work of the fix for VSTS #569295 - Projects that includes files using wildcards will expand (and remove) wildcards upon save --- main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-) (limited to 'main/src/core') diff --git a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs index bba9a973a2..2be59e7e93 100644 --- a/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs +++ b/main/src/core/MonoDevelop.Core/MonoDevelop.Projects/Project.cs @@ -3780,7 +3780,6 @@ namespace MonoDevelop.Projects { // Compare only metadata, since item name and include can't change - MSBuildEvaluationContext context = null; var n = 0; foreach (var p in item.Metadata.GetProperties ()) { var p2 = evalItem.Metadata.GetProperty (p.Name); @@ -3789,12 +3788,7 @@ namespace MonoDevelop.Projects if (!p.ValueType.Equals (p.Value, p2.UnevaluatedValue)) { if (p2.UnevaluatedValue != null && p2.UnevaluatedValue.Contains ('%')) { // Check evaluated value is a match. - if (context == null) { - context = new MSBuildEvaluationContext (); - context.InitEvaluation (MSBuildProject); - } - string value = context.Evaluate (p.UnevaluatedValue); - if (!p.ValueType.Equals (p.Value, value)) + if (!p.ValueType.Equals (p.Value, p2.Value)) return false; } else return false; -- cgit v1.2.3