Author: jbevain
Date: 2007-06-06 05:25:34 -0400 (Wed, 06 Jun 2007)
New Revision: 78710

Modified:
   trunk/cecil/linker/ChangeLog
   trunk/cecil/linker/Mono.Linker.Steps/LoadReferencesStep.cs
   trunk/cecil/linker/Mono.Linker.Steps/ResolveFromXmlStep.cs
   trunk/cecil/linker/Mono.Linker/LinkContext.cs
Log:
2007-06-06  Jb Evain  <[EMAIL PROTECTED]>

        * Mono.Linker/LinkContext.cs:
          Mono.Linker.Steps/LoadReferences.cs:
                Use the name of the assembly as a key
                instead of the fullname.


Modified: trunk/cecil/linker/ChangeLog
===================================================================
--- trunk/cecil/linker/ChangeLog        2007-06-06 09:24:30 UTC (rev 78709)
+++ trunk/cecil/linker/ChangeLog        2007-06-06 09:25:34 UTC (rev 78710)
@@ -1,5 +1,10 @@
 2007-06-06  Jb Evain  <[EMAIL PROTECTED]>
 
+       * Mono.Linker/LinkContext.cs:
+         Mono.Linker.Steps/LoadReferences.cs:
+               Use the name of the assembly as a key
+               instead of the fullname.
+
        * Mono.Linker/CustomResolver.cs:
                When a method is not found, go down
                the class hierarchy to find it.

Modified: trunk/cecil/linker/Mono.Linker/LinkContext.cs
===================================================================
--- trunk/cecil/linker/Mono.Linker/LinkContext.cs       2007-06-06 09:24:30 UTC 
(rev 78709)
+++ trunk/cecil/linker/Mono.Linker/LinkContext.cs       2007-06-06 09:25:34 UTC 
(rev 78710)
@@ -78,7 +78,7 @@
                {
                        AssemblyNameReference reference = GetReference (scope);
 
-                       AssemblyDefinition assembly = _assemblies 
[reference.FullName] as AssemblyDefinition;
+                       AssemblyDefinition assembly = _assemblies 
[reference.Name] as AssemblyDefinition;
                        if (assembly != null)
                                return assembly;
 
@@ -113,7 +113,7 @@
 
                void AddAssembly (AssemblyNameReference reference, 
AssemblyDefinition assembly)
                {
-                       _assemblies.Add (reference.FullName, assembly);
+                       _assemblies.Add (reference.Name, assembly);
                }
 
                static bool IsCore (AssemblyNameReference name)

Modified: trunk/cecil/linker/Mono.Linker.Steps/LoadReferencesStep.cs
===================================================================
--- trunk/cecil/linker/Mono.Linker.Steps/LoadReferencesStep.cs  2007-06-06 
09:24:30 UTC (rev 78709)
+++ trunk/cecil/linker/Mono.Linker.Steps/LoadReferencesStep.cs  2007-06-06 
09:25:34 UTC (rev 78710)
@@ -43,10 +43,10 @@
 
                void ProcessReferences (AssemblyDefinition assembly)
                {
-                       if (_references.Contains (assembly.Name.FullName))
+                       if (_references.Contains (assembly.Name))
                                return;
 
-                       _references.Add (assembly.Name.FullName, assembly);
+                       _references.Add (assembly.Name, assembly);
 
                        foreach (AssemblyNameReference reference in 
assembly.MainModule.AssemblyReferences)
                                ProcessReferences (Context.Resolve (reference));

Modified: trunk/cecil/linker/Mono.Linker.Steps/ResolveFromXmlStep.cs
===================================================================
--- trunk/cecil/linker/Mono.Linker.Steps/ResolveFromXmlStep.cs  2007-06-06 
09:24:30 UTC (rev 78709)
+++ trunk/cecil/linker/Mono.Linker.Steps/ResolveFromXmlStep.cs  2007-06-06 
09:25:34 UTC (rev 78710)
@@ -141,8 +141,12 @@
 
                static TypePreserve GetTypePreserve (XPathNavigator nav)
                {
+                       string attribute = GetAttribute (nav, _preserve);
+                       if (attribute == null || attribute.Length == 0)
+                               return TypePreserve.Nothing;
+
                        try {
-                               return (TypePreserve) Enum.Parse (typeof 
(TypePreserve), GetAttribute (nav, _preserve), true);
+                               return (TypePreserve) Enum.Parse (typeof 
(TypePreserve), attribute, true);
                        } catch {
                                return TypePreserve.Nothing;
                        }

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

Reply via email to