Author: zoltan
Date: 2006-06-29 06:36:45 -0400 (Thu, 29 Jun 2006)
New Revision: 62137

Modified:
   trunk/mono/mono/metadata/ChangeLog
   trunk/mono/mono/metadata/icall.c
Log:
2006-06-29  Zoltan Varga  <[EMAIL PROTECTED]>

        * icall.c (ves_icall_System_Reflection_Assembly_GetTypes): Fix support
        for dynamic assemblies. Fixes #78724.


Modified: trunk/mono/mono/metadata/ChangeLog
===================================================================
--- trunk/mono/mono/metadata/ChangeLog  2006-06-29 05:06:20 UTC (rev 62136)
+++ trunk/mono/mono/metadata/ChangeLog  2006-06-29 10:36:45 UTC (rev 62137)
@@ -1,3 +1,8 @@
+2006-06-29  Zoltan Varga  <[EMAIL PROTECTED]>
+
+       * icall.c (ves_icall_System_Reflection_Assembly_GetTypes): Fix support
+       for dynamic assemblies. Fixes #78724.
+
 2006-06-28  Zoltan Varga  <[EMAIL PROTECTED]>
 
        * marshal.c (mono_string_to_byvalwstr): Fix this completely broken 
function.

Modified: trunk/mono/mono/metadata/icall.c
===================================================================
--- trunk/mono/mono/metadata/icall.c    2006-06-29 05:06:20 UTC (rev 62136)
+++ trunk/mono/mono/metadata/icall.c    2006-06-29 10:36:45 UTC (rev 62137)
@@ -4557,11 +4557,12 @@
                        for (i = 0; i < mono_array_length(abuilder->modules); 
i++) {
                                MonoReflectionModuleBuilder *mb = 
mono_array_get (abuilder->modules, MonoReflectionModuleBuilder*, i);
                                MonoArray *append = mb->types;
-                               if (append && mono_array_length (append) > 0) {
+                               /* The types array might not be fully filled up 
*/
+                               if (append && mb->num_types > 0) {
                                        guint32 len1, len2;
                                        MonoArray *new;
                                        len1 = res ? mono_array_length (res) : 
0;
-                                       len2 = mono_array_length (append);
+                                       len2 = mb->num_types;
                                        new = mono_array_new (domain, 
mono_defaults.monotype_class, len1 + len2);
                                        if (res)
                                                mono_array_memcpy_refs (new, 0, 
res, 0, len1);

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

Reply via email to