Evaluate Condition each Import within ImportGroup.
authorAtsushi Eno <atsushieno@veritas-vos-liberabit.com>
Fri, 6 Dec 2013 17:30:36 +0000 (02:30 +0900)
committerAtsushi Eno <atsushieno@gmail.com>
Tue, 7 Jan 2014 13:02:02 +0000 (22:02 +0900)
mcs/class/Microsoft.Build/Microsoft.Build.Evaluation/Project.cs
mcs/class/Microsoft.Build/Microsoft.Build.Execution/ProjectInstance.cs

index d384456d52b05321f8b77b31c6f31f45a80b1e93..71bb210658f4d99aedce461217300bc5536a748f 100644 (file)
@@ -255,8 +255,9 @@ namespace Microsoft.Build.Evaluation
                                var ige = child as ProjectImportGroupElement;
                                if (ige != null && Evaluate (ige.Condition)) {
                                        foreach (var incc in ige.Imports) {
-                                               foreach (var e in Import (incc))
-                                                       yield return e;
+                                               if (Evaluate (incc.Condition))
+                                                       foreach (var e in Import (incc))
+                                                               yield return e;
                                        }
                                }
                                var inc = child as ProjectImportElement;
index 91ce68a040ca2612db12f77207181e85caeea6bf..dd4a0e17a37251827a7b3f26e7277650d1a492cf 100644 (file)
@@ -196,8 +196,9 @@ namespace Microsoft.Build.Execution
                                var ige = child as ProjectImportGroupElement;
                                if (ige != null && EvaluateCondition (ige.Condition)) {
                                        foreach (var incc in ige.Imports) {
-                                               foreach (var e in Import (incc))
-                                                       yield return e;
+                                               if (EvaluateCondition (incc.Condition))
+                                                       foreach (var e in Import (incc))
+                                                               yield return e;
                                        }
                                }
                                var inc = child as ProjectImportElement;