Check null buildTargets at BuildRequestData. But not in ProjectInstance.
authorAtsushi Eno <atsushieno@gmail.com>
Thu, 23 Jan 2014 14:45:23 +0000 (23:45 +0900)
committerAtsushi Eno <atsushieno@gmail.com>
Thu, 23 Jan 2014 14:45:23 +0000 (23:45 +0900)
mcs/class/Microsoft.Build/Microsoft.Build.Execution/BuildRequestData.cs
mcs/class/Microsoft.Build/Microsoft.Build.Execution/ProjectInstance.cs

index bd5edffd7c6f4daa6225b2090c09ef3540b4e7fb..92942ab1d3ae411f23fb81289c90e860e9bf79c7 100644 (file)
@@ -48,6 +48,8 @@ namespace Microsoft.Build.Execution
                public BuildRequestData (ProjectInstance projectInstance, string[] targetsToBuild, HostServices hostServices,
                                BuildRequestDataFlags flags)
                {
+                       if (targetsToBuild == null)
+                               throw new ArgumentNullException ("targetsToBuild");
                        ProjectInstance = projectInstance;
                        TargetNames = targetsToBuild;
                        HostServices = hostServices;
index da56177158f36350dd59982e9be0a3959ef24fe8..0d353b53ac36e493d522811b6ad7518d4d49faf1 100644 (file)
@@ -419,7 +419,7 @@ namespace Microsoft.Build.Execution
                                ForwardingLoggers = remoteLoggers,
                                Loggers = loggers,
                        };
-                       var requestData = new BuildRequestData (this, targets);
+                       var requestData = new BuildRequestData (this, targets ?? DefaultTargets.ToArray ());
                        var result = manager.Build (parameters, requestData);
                        targetOutputs = result.ResultsByTarget;
                        return result.OverallResult == BuildResultCode.Success;