2010-02-26 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Fri, 26 Feb 2010 20:30:11 +0000 (20:30 -0000)
committerZoltan Varga <vargaz@gmail.com>
Fri, 26 Feb 2010 20:30:11 +0000 (20:30 -0000)
* class.c (get_implicit_generic_array_interfaces): Fix the last change so
we don't call setup_interface_offsets () for unfinished types.

svn path=/trunk/mono/; revision=152580

mono/metadata/ChangeLog
mono/metadata/class.c

index 792257cc25c68b4a86bf7f4972b9eee3b196e917..6e832ec1a88a98da707f0c092c6e563e78a15759 100644 (file)
@@ -1,3 +1,8 @@
+2010-02-26  Zoltan Varga  <vargaz@gmail.com>
+
+       * class.c (get_implicit_generic_array_interfaces): Fix the last change so
+       we don't call setup_interface_offsets () for unfinished types.
+
 2010-02-26  Zoltan Varga  <vargaz@gmail.com>
 
        * class.c (mono_class_generic_sharing_enabled): Move this to
index a7d9a05bf440bb134c98ca4eb64eba5f707093e4..78bcf1bf1fba6cb2441bbcb6f05850773e625f15 100644 (file)
@@ -2626,7 +2626,7 @@ get_implicit_generic_array_interfaces (MonoClass *class, int *num, int *is_enume
                        idepth--;
 
                // FIXME: This doesn't seem to work/required for generic params
-               if (!(eclass->this_arg.type == MONO_TYPE_VAR || eclass->this_arg.type == MONO_TYPE_MVAR))
+               if (!(eclass->this_arg.type == MONO_TYPE_VAR || eclass->this_arg.type == MONO_TYPE_MVAR || (eclass->image->dynamic && !eclass->wastypebuilder)))
                        mono_class_setup_interface_offsets (eclass);
 
                interface_count = all_interfaces? eclass->interface_offsets_count: eclass->interface_count;