2009-03-18 Zoltan Varga <vargaz@gmail.com>
authorZoltan Varga <vargaz@gmail.com>
Wed, 18 Mar 2009 13:24:02 +0000 (13:24 -0000)
committerZoltan Varga <vargaz@gmail.com>
Wed, 18 Mar 2009 13:24:02 +0000 (13:24 -0000)
* dwarfwriter.c (token_handler): Fix a crash caused by the last change.

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

mono/mini/ChangeLog
mono/mini/dwarfwriter.c

index 15c31fcf55a1c6627c820174d78237e795e05135..9f94802f4a99f813e769ac1dad1a46baecbff753 100644 (file)
@@ -1,3 +1,7 @@
+2009-03-18  Zoltan Varga  <vargaz@gmail.com>
+
+       * dwarfwriter.c (token_handler): Fix a crash caused by the last change.
+
 2009-03-17  Jb Evain  <jbevain@novell.com>
 
        * driver.c: remove now uneeded call to mono_gc_base_init before
index 3462c2f471ff72f24abb6e58e747ee72cffa75ca..202296f2e9ed839347fd5a188561253bdf0bd469 100644 (file)
@@ -932,6 +932,7 @@ token_handler (MonoDisHelper *dh, MonoMethod *method, guint32 token)
        char *res, *desc;
        MonoMethod *cmethod;
        MonoClass *klass;
+       MonoClassField *field;
        gpointer data = NULL;
 
        if (method->wrapper_type)
@@ -971,7 +972,11 @@ token_handler (MonoDisHelper *dh, MonoMethod *method, guint32 token)
        case CEE_LDSFLD:
        case CEE_STFLD:
        case CEE_STSFLD:
-               desc = mono_field_full_name (data);
+               if (method->wrapper_type)
+                       field = data;
+               else
+                       field = mono_field_from_token (method->klass->image, token, &klass, NULL);
+               desc = mono_field_full_name (field);
                res = g_strdup_printf ("<%s>", desc);
                g_free (desc);
                break;