[mono-symbolicate] Display error when MVID folder not found
authorMarcos Henrich <marcos.henrich@xamarin.com>
Fri, 15 Jul 2016 10:48:53 +0000 (11:48 +0100)
committerMarcos Henrich <marcos.henrich@xamarin.com>
Mon, 18 Jul 2016 12:55:29 +0000 (13:55 +0100)
Display error instead of crashing with exception.

mcs/tools/mono-symbolicate/SymbolManager.cs

index 466f18dc68c82b4bf4fb2d48bd51b7d7faae5540..a7d5c713e42eaa68571ddf1ce27922981a05e740 100644 (file)
@@ -20,6 +20,8 @@ namespace Mono
                internal bool TryResolveLocation (StackFrameData sfData, string mvid, string aotid)
                {
                        var assemblyLocProvider = GetOrCreateAssemblyLocationProvider (mvid);
+                       if (assemblyLocProvider == null)
+                               return false;
 
                        SeqPointInfo seqPointInfo = null;
                        if (!sfData.IsILOffset && aotid != null)
@@ -36,8 +38,10 @@ namespace Mono
                                return assemblies[mvid];
 
                        var mvidDir = Path.Combine (msymDir, mvid);
-                       if (!Directory.Exists (mvidDir))
-                               throw new Exception (string.Format("MVID directory does not exist: {0}", mvidDir));
+                       if (!Directory.Exists (mvidDir)) {
+                               Console.Error.WriteLine ("MVID directory does not exist: {0}", mvidDir);
+                               return  null;
+                       }
 
                        string assemblyPath = null;
                        var exeFiles = Directory.GetFiles (mvidDir, "*.exe");