Author: msierad
Date: 2006-10-08 07:10:43 -0400 (Sun, 08 Oct 2006)
New Revision: 66403

Modified:
   trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConsoleLogger.cs
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportedProject.cs
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InternalLoggerException.cs
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InvalidProjectFileException.cs
   trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
   trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetCollection.cs
   
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskEngine.cs
Log:
2006-10-08  Marek Sieradzki  <[EMAIL PROTECTED]>

        * Target.cs: Changed "" to String.Empty.
        * TaskEngine.cs: Don't try to convert a parameter to specific type if
        string was evaluated to String.Empty.
        * InternalLoggerException.cs: 
        * InvalidProjectFileException.cs: Added LinkDemand before
        GetObjectData ().
        * ConsoleLogger.cs: Changed "" to String.Empty.
        * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
        with change to generics).
        * Project.cs: Made Build () throw more meaningful exception.            
                                                                



Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog    
    2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ChangeLog    
    2006-10-08 11:10:43 UTC (rev 66403)
@@ -1,3 +1,16 @@
+2006-10-08  Marek Sieradzki  <[EMAIL PROTECTED]>
+
+       * Target.cs: Changed "" to String.Empty.
+       * TaskEngine.cs: Don't try to convert a parameter to specific type if
+       string was evaluated to String.Empty.
+       * InternalLoggerException.cs:
+       * InvalidProjectFileException.cs: Added LinkDemand before
+       GetObjectData ().
+       * ConsoleLogger.cs: Changed "" to String.Empty.
+       * TargetCollection.cs: Fixed GetEnumerator () (stupid bug introduced
+       with change to generics).
+       * Project.cs: Made Build () throw more meaningful exception.
+
 2006-10-06  Marek Sieradzki  <[EMAIL PROTECTED]>
 
        * Target.cs: Reformatted.

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConsoleLogger.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConsoleLogger.cs
 2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ConsoleLogger.cs
 2006-10-08 11:10:43 UTC (rev 66403)
@@ -100,7 +100,7 @@
                
                public void BuildStartedHandler (object sender, 
BuildStartedEventArgs args)
                {
-                       WriteLine ("");
+                       WriteLine (String.Empty);
                        WriteLine (String.Format ("Build started {0}.", 
args.Timestamp));
                        WriteLine 
("__________________________________________________");
                        buildStart = args.Timestamp;
@@ -119,7 +119,7 @@
                                TimeSpan timeElapsed = args.Timestamp - 
buildStart;
                                WriteLine (String.Format ("\t {0} Warning(s)", 
warningCount));
                                WriteLine (String.Format ("\t {0} Error(s)", 
errorCount));
-                               WriteLine ("");
+                               WriteLine (String.Empty);
                                WriteLine (String.Format ("Time Elapsed {0}", 
timeElapsed));
                        } 
                }
@@ -127,14 +127,14 @@
                public void ProjectStartedHandler (object sender, 
ProjectStartedEventArgs args)
                {
                        WriteLine (String.Format ("Project \"{0}\" ({1} 
target(s)):", args.ProjectFile, args.TargetNames));
-                       WriteLine ("");
+                       WriteLine (String.Empty);
                }
                
                public void ProjectFinishedHandler (object sender, 
ProjectFinishedEventArgs args)
                {
                        if (IsVerbosityGreaterOrEqual 
(LoggerVerbosity.Diagnostic)) {
                                WriteLine (String.Format ("Done building 
project \"{0}\".", args.ProjectFile));
-                               WriteLine ("");
+                               WriteLine (String.Empty);
                        }
                }
                
@@ -150,7 +150,7 @@
                        if (IsVerbosityGreaterOrEqual 
(LoggerVerbosity.Diagnostic))
                                WriteLine (String.Format ("Done building target 
\"{0}\" in project \"{1}\".",
                                        args.TargetName, args.ProjectFile));
-                       WriteLine ("");
+                       WriteLine (String.Empty);
                }
                
                public void TaskStartedHandler (object sender, 
TaskStartedEventArgs args)

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportedProject.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportedProject.cs
       2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/ImportedProject.cs
       2006-10-08 11:10:43 UTC (rev 66403)
@@ -83,4 +83,4 @@
        }
 }
 
-#endif
\ No newline at end of file
+#endif

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InternalLoggerException.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InternalLoggerException.cs
       2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InternalLoggerException.cs
       2006-10-08 11:10:43 UTC (rev 66403)
@@ -29,6 +29,7 @@
 
 using System;
 using System.Runtime.Serialization;
+using System.Security.Permissions;
 using Microsoft.Build.Framework;
 
 namespace Microsoft.Build.BuildEngine {
@@ -66,6 +67,7 @@
                        helpKeyword = info.GetString ("HelpKeywordPrefix");
                }
 
+               [SecurityPermission (SecurityAction.LinkDemand, 
SerializationFormatter = true)]
                public override void GetObjectData (SerializationInfo info,
                                                    StreamingContext context)
                {

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InvalidProjectFileException.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InvalidProjectFileException.cs
   2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/InvalidProjectFileException.cs
   2006-10-08 11:10:43 UTC (rev 66403)
@@ -29,6 +29,7 @@
 
 using System;
 using System.Runtime.Serialization;
+using System.Security.Permissions;
 using System.Xml;
 
 namespace Microsoft.Build.BuildEngine {
@@ -109,6 +110,7 @@
                        this.projectFile = info.GetString ("ProjectFile");
                }
 
+               [SecurityPermission (SecurityAction.LinkDemand, 
SerializationFormatter = true)]
                public override void GetObjectData (SerializationInfo info,
                                                    StreamingContext context)
                {

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs   
    2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Project.cs   
    2006-10-08 11:10:43 UTC (rev 66403)
@@ -159,7 +159,7 @@
                public bool Build (string targetName)
                {
                        if (targets.Exists (targetName) == false)
-                               throw new Exception ("Target specified to build 
does not exist.");
+                               throw new Exception (String.Format ("Target {0} 
does not exist.", targetName));
                        
                        return this.targets [targetName].Build ();
                }

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs    
    2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/Target.cs    
    2006-10-08 11:10:43 UTC (rev 66403)
@@ -88,7 +88,7 @@
                        buildState = BuildState.Started;
                        if (dependsOnTargets == null) {
                                ;
-                       } else if (dependsOnTargets.Value == "") {
+                       } else if (dependsOnTargets.Value == String.Empty) {
                                ;
                        } else {
                                OldExpression dependencies = new OldExpression 
(Project);

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetCollection.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetCollection.cs
      2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TargetCollection.cs
      2006-10-08 11:10:43 UTC (rev 66403)
@@ -69,7 +69,7 @@
                public IEnumerator GetEnumerator ()
                {
                        foreach (KeyValuePair <string, Target> kvp in 
targetsByName) {
-                               yield return kvp.Key;
+                               yield return kvp.Value;
                        }
                }
 

Modified: 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskEngine.cs
===================================================================
--- 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskEngine.cs
    2006-10-08 11:03:08 UTC (rev 66402)
+++ 
trunk/mcs/class/Microsoft.Build.Engine/Microsoft.Build.BuildEngine/TaskEngine.cs
    2006-10-08 11:10:43 UTC (rev 66403)
@@ -63,6 +63,7 @@
                        Dictionary <string, object>     values;
                        PropertyInfo    currentProperty;
                        PropertyInfo[]  properties;
+                       object          value;
                        
                        this.task = task;
                        this.taskElement = taskElement;
@@ -74,7 +75,11 @@
                                if (currentProperty == null)
                                        throw new InvalidProjectFileException 
(String.Format ("Task does not have property \"{0}\" defined",
                                                de.Key));
-                               values.Add (de.Key, GetObjectFromString 
(de.Value, currentProperty.PropertyType));
+                               
+                               value = GetObjectFromString (de.Value, 
currentProperty.PropertyType);           
+                               
+                               if (value != null)
+                                       values.Add (de.Key, value);
                        }
                        
                        properties = taskType.GetProperties ();
@@ -107,9 +112,9 @@
                                        
                                        if (xmlElement.Name != "Output")
                                                throw new 
InvalidProjectFileException ("Only Output elements can be Task's child nodes.");
-                                       if (xmlElement.GetAttribute 
("ItemName") != "" && xmlElement.GetAttribute ("PropertyName") != "")
+                                       if (xmlElement.GetAttribute 
("ItemName") != String.Empty && xmlElement.GetAttribute ("PropertyName") != 
String.Empty)
                                                throw new 
InvalidProjectFileException ("Only one of ItemName and ProperytyName attributes 
can be specified.");
-                                       if (xmlElement.GetAttribute 
("TaskParameter") == "")
+                                       if (xmlElement.GetAttribute 
("TaskParameter") == String.Empty)
                                                throw new 
InvalidProjectFileException ("TaskParameter attribute must be specified.");
                                                
                                        taskParameter = xmlElement.GetAttribute 
("TaskParameter");
@@ -229,6 +234,9 @@
                        e = new OldExpression (parentProject);
                        e.ParseSource (raw);
                        
+                       if ((string) e.ConvertTo (typeof (string)) == 
String.Empty)
+                               return null;
+                       
                        result = e.ConvertTo (type);
                        
                        return result;

_______________________________________________
Mono-patches maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-patches

Reply via email to