diff options
author | Jb Evain <jbevain@gmail.com> | 2009-08-06 22:14:23 +0400 |
---|---|---|
committer | Jb Evain <jbevain@gmail.com> | 2009-08-06 22:14:23 +0400 |
commit | 337d570c695abe91b632cd66aad87d7c5794d598 (patch) | |
tree | ce9253f3f09dc26a1b2c65faea0ceca4e54d7fda /mcs/class | |
parent | 11d747479fe2e6dd713154b17db686cc43589240 (diff) |
2009-08-06 Jb Evain <jbevain@novell.com>
* Mono.Cecil/BaseAssemblyResolver.cs:
Do not crash when the GAC folder can't be found.
svn path=/trunk/mcs/; revision=139517
Diffstat (limited to 'mcs/class')
-rw-r--r-- | mcs/class/Mono.Cecil/ChangeLog | 6 | ||||
-rw-r--r-- | mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs | 9 |
2 files changed, 13 insertions, 2 deletions
diff --git a/mcs/class/Mono.Cecil/ChangeLog b/mcs/class/Mono.Cecil/ChangeLog index 23cadc1105d..5bd1e5a675a 100644 --- a/mcs/class/Mono.Cecil/ChangeLog +++ b/mcs/class/Mono.Cecil/ChangeLog @@ -1,8 +1,12 @@ +2009-08-06 Jb Evain <jbevain@novell.com> + + * Mono.Cecil/BaseAssemblyResolver.cs: + Do not crash when the GAC folder can't be found. + 2009-07-28 Jb Evain <jbevain@novell.com> * Mono.Cecil/AssemblyStripper.cs: Make all methods share the same body. - 2009-07-16 Jb Evain <jbevain@novell.com> diff --git a/mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs b/mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs index 27968b69837..83bd1b4d51a 100644 --- a/mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs +++ b/mcs/class/Mono.Cecil/Mono.Cecil/BaseAssemblyResolver.cs @@ -173,6 +173,9 @@ namespace Mono.Cecil { return null; string currentGac = GetCurrentGacPath (); + if (currentGac == null) + return null; + if (OnMono ()) { string s = GetAssemblyFile (reference, currentGac); if (File.Exists (s)) @@ -206,10 +209,14 @@ namespace Mono.Cecil { static string GetCurrentGacPath () { + string file = typeof (Uri).Module.FullyQualifiedName; + if (!File.Exists (file)) + return null; + return Directory.GetParent ( Directory.GetParent ( Path.GetDirectoryName ( - typeof (Uri).Module.FullyQualifiedName) + file) ).FullName ).FullName; } |