[xbuild] RemoveDir - remove only if the dir exists.
authorAnkit Jain <jankit@suse.de>
Thu, 4 Aug 2011 08:21:24 +0000 (13:51 +0530)
committerAnkit Jain <jankit@suse.de>
Thu, 4 Aug 2011 08:21:24 +0000 (13:51 +0530)
Fixes bug #710234.

mcs/class/Microsoft.Build.Tasks/Microsoft.Build.Tasks/RemoveDir.cs

index d8783035251c7644de5db35bc00943e4891909af..32505c9a42474e75607b634af19b255eeab69f36 100644 (file)
@@ -52,11 +52,11 @@ namespace Microsoft.Build.Tasks {
                        
                        foreach (ITaskItem directory in directories) {
                                try {
-                                       Directory.Delete (directory.GetMetadata ("FullPath"), true);
-                                       temporaryRemovedDirectories.Add (directory);
-                               }
-                               catch (DirectoryNotFoundException ex) {
-                                       Log.LogErrorFromException (ex);
+                                       string fullpath = directory.GetMetadata ("FullPath");
+                                       if (Directory.Exists (fullpath)) {
+                                               Directory.Delete (fullpath, true);
+                                               temporaryRemovedDirectories.Add (directory);
+                                       }
                                }
                                catch (PathTooLongException ex) {
                                        Log.LogErrorFromException (ex);