typedef struct {
const gchar *method_name;
- const gchar *cil_code;
+ const gchar *obsolete_cil_code;
guint32 wrapper_type;
} MonoDebugWrapperData;
if (header->wrapper_data) {
g_free ((gpointer)header->wrapper_data->method_name);
- g_free ((gpointer)header->wrapper_data->cil_code);
g_slist_free (header->address_list);
g_free (header->wrapper_data);
}
data_table_hash = NULL;
}
- g_free (mono_symbol_table);
- mono_symbol_table = NULL;
+ if (mono_symbol_table) {
+ if (mono_symbol_table->global_data_table)
+ free_data_table (mono_symbol_table->global_data_table);
+
+ g_free (mono_symbol_table);
+ mono_symbol_table = NULL;
+ }
}
void
g_hash_table_insert (table->method_hash, declaring, header);
if (is_wrapper) {
- const unsigned char* il_code;
- MonoMethodHeader *mheader;
MonoDebugWrapperData *wrapper;
- guint32 il_codesize;
-
- mheader = mono_method_get_header (declaring);
- il_code = mono_method_header_get_code (mheader, &il_codesize, NULL);
header->wrapper_data = wrapper = g_new0 (MonoDebugWrapperData, 1);
wrapper->wrapper_type = method->wrapper_type;
wrapper->method_name = mono_method_full_name (declaring, TRUE);
- wrapper->cil_code = mono_disasm_code (
- NULL, declaring, il_code, il_code + il_codesize);
+ wrapper->obsolete_cil_code = "";
}
} else {
address->header.wrapper_data = header->wrapper_data;