diff options
author | Paolo Molaro <lupus@oddwiz.org> | 2003-07-18 15:27:46 +0400 |
---|---|---|
committer | Paolo Molaro <lupus@oddwiz.org> | 2003-07-18 15:27:46 +0400 |
commit | 712b41e674e2ad20b09dae49061b85c32958b60e (patch) | |
tree | 3cb740ca5218d9bf1c461bd3e823545e1b597ffc | |
parent | 3eb19d5c1d4fe5d7c69b36b8740ef691ce9e47e6 (diff) |
Fri Jul 18 13:12:38 CEST 2003 Paolo Molaro <lupus@ximian.com>
* get.c: updates for array type representation changes.
svn path=/trunk/mono/; revision=16396
-rw-r--r-- | mono/dis/ChangeLog | 5 | ||||
-rw-r--r-- | mono/dis/get.c | 15 |
2 files changed, 16 insertions, 4 deletions
diff --git a/mono/dis/ChangeLog b/mono/dis/ChangeLog index 6597cd478af..789202c4c7d 100644 --- a/mono/dis/ChangeLog +++ b/mono/dis/ChangeLog @@ -1,3 +1,8 @@ + +Fri Jul 18 13:12:38 CEST 2003 Paolo Molaro <lupus@ximian.com> + + * get.c: updates for array type representation changes. + 2003-06-16 Jackson Harper <jackson@latitudegeo.com> * get.c: Fix modopt and modreq diff --git a/mono/dis/get.c b/mono/dis/get.c index 6907b4eb178..c4a45ecd602 100644 --- a/mono/dis/get.c +++ b/mono/dis/get.c @@ -398,7 +398,7 @@ dis_stringify_array (MonoImage *m, MonoArrayType *array) GString *s = g_string_new(""); int i; - type = dis_stringify_type (m, array->type); + type = dis_stringify_type (m, &array->eklass->byval_arg); g_string_append (s, type); g_free (type); g_string_append_c (s, '['); @@ -575,12 +575,19 @@ dis_stringify_type (MonoImage *m, MonoType *type) case MONO_TYPE_FNPTR: bare = dis_stringify_method_signature (m, type->data.method, 0); break; - case MONO_TYPE_PTR: - case MONO_TYPE_SZARRAY: { + case MONO_TYPE_PTR: { char *child_type; child_type = dis_stringify_type (m, type->data.type); - bare = g_strdup_printf (type->type == MONO_TYPE_PTR ? "%s*" : "%s[]", child_type); + bare = g_strdup_printf ("%s*", child_type); + g_free (child_type); + break; + } + case MONO_TYPE_SZARRAY: { + char *child_type; + child_type = dis_stringify_type (m, &type->data.klass->byval_arg); + + bare = g_strdup_printf ("%s[]", child_type); g_free (child_type); break; } |