2003-10-10 Martin Baulig <martin@ximian.com>
authorMartin Baulig <martin@novell.com>
Fri, 10 Oct 2003 05:37:29 +0000 (05:37 -0000)
committerMartin Baulig <martin@novell.com>
Fri, 10 Oct 2003 05:37:29 +0000 (05:37 -0000)
* class.c (inflate_generic_type): If we're inflating for a generic
type instance (and not for a generic method), return
MONO_TYPE_MVAR unchanged.

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

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

index 749f05d8df9c3b23ae8d4a56ada650bd1c488b4a..7db5773a43a645450ee909ac588aca6a214afb27 100644 (file)
@@ -1,3 +1,9 @@
+2003-10-10  Martin Baulig  <martin@ximian.com>
+
+       * class.c (inflate_generic_type): If we're inflating for a generic
+       type instance (and not for a generic method), return
+       MONO_TYPE_MVAR unchanged.
+
 2003-10-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
 
        * string-icalls.c: Join ignores null strings in the source array.
index 6c101b04b0554ca4a6452c86e2c7bed4519bb10a..5a75563186feadfdc21ffdf0b4301c51523856a3 100644 (file)
@@ -184,7 +184,10 @@ inflate_generic_type (MonoType *type, MonoGenericInst *tgen, MonoGenericInst *mg
 {
        switch (type->type) {
        case MONO_TYPE_MVAR:
-               return dup_type (mgen->type_argv [type->data.generic_param->num]);
+               if (mgen)
+                       return dup_type (mgen->type_argv [type->data.generic_param->num]);
+               else
+                       return type;
        case MONO_TYPE_VAR:
                /*g_print ("inflating var %d to %s\n", type->data.type_param, mono_type_get_name (tgen->type_argv [type->data.type_param]));*/
                return dup_type (tgen->type_argv [type->data.generic_param->num]);