[mono-symbolicate] Fixes Directory Exists/Delete race condition.
authorMarcos Henrich <marcos.henrich@xamarin.com>
Tue, 19 Jul 2016 09:40:31 +0000 (10:40 +0100)
committerMarcos Henrich <marcos.henrich@xamarin.com>
Tue, 19 Jul 2016 09:40:31 +0000 (10:40 +0100)
mcs/tools/mono-symbolicate/SymbolManager.cs

index 01fde69cd72e2ac4f6bffdddc224ad523dd28f56..42990e5325e2243e994deda826b8c5dbda616ad4 100644 (file)
@@ -109,8 +109,11 @@ namespace Mono
                                        var mvid = assembly.MainModule.Mvid.ToString ("N");
                                        var mvidDir = Path.Combine (msymDir, mvid);
 
-                                       if (Directory.Exists (mvidDir))
-                                               Directory.Delete (mvidDir, true);
+                                       if (Directory.Exists (mvidDir)) {
+                                               try {
+                                                       Directory.Delete (mvidDir, true);
+                                               } catch (DirectoryNotFoundException e) {}
+                                       }
 
                                        Directory.CreateDirectory (mvidDir);