Merge pull request #901 from Blewzman/FixAggregateExceptionGetBaseException
[mono.git] / mcs / class / Microsoft.Build.Tasks / Microsoft.Build.Tasks / AL.cs
index 38e059426ef62f9bc7d4c031d7b34ba0b9439fb3..1fc961b72dc1f56a4865b6a55bb1c583ef706087 100644 (file)
@@ -37,8 +37,6 @@ using Mono.XBuild.Utilities;
 namespace Microsoft.Build.Tasks {
        public class AL : ToolTaskExtension {
        
-               Process alProcess;
-       
                public AL ()
                {
                }
@@ -95,20 +93,14 @@ namespace Microsoft.Build.Tasks {
                
                public override bool Execute ()
                {
-                       CommandLineBuilderExtension clbe = new CommandLineBuilderExtension ();
-                       AddResponseFileCommands (clbe);
-                       
-                       alProcess = new Process ();
-                       alProcess.StartInfo.Arguments = clbe.ToString ();
-                       alProcess.StartInfo.FileName = GenerateFullPathToTool ();
-                       alProcess.Start ();
-                       alProcess.WaitForExit ();
-                       return true;
+                       return base.Execute ();
                }
 
                protected override string GenerateFullPathToTool ()
                {
-                       return Path.Combine (ToolPath, ToolName);
+                       if (!string.IsNullOrEmpty (ToolPath))
+                               return Path.Combine (ToolPath, ToolExe);
+                       return ToolLocationHelper.GetPathToDotNetFrameworkFile (ToolExe, TargetDotNetFrameworkVersion.VersionLatest);
                }
 
                public string AlgorithmId {
@@ -244,9 +236,7 @@ namespace Microsoft.Build.Tasks {
                }
 
                protected override string ToolName {
-                       get {
-                               return "al";
-                       }
+                       get { return "al.exe"; }
                }
 
                public string Trademark {