+2003-01-27 Zoltan Varga <vargaz@freemail.hu>
+
+ * exception.c (ves_icall_get_trace): avoid crash if the exception is
+ not yet thrown.
+
+ * exception.c (ves_icall_get_trace): avoid crash on unmanaged frames.
+
2003-01-26 Martin Baulig <martin@ximian.com>
* debug.c (mono_debug_init): Take a boolean argument which
MonoArray *res;
MonoArray *ta = exc->trace_ips;
int i, len;
+
+ if (ta == NULL) {
+ /* Exception is not thrown yet */
+ return mono_array_new (domain, mono_defaults.stack_frame_class, 0);
+ }
len = mono_array_length (ta);
gpointer ip = mono_array_get (ta, gpointer, i);
ji = mono_jit_info_table_find (domain, ip);
+ if (ji == NULL) {
+ /* Unmanaged frame */
+ mono_array_set (res, gpointer, i, sf);
+ continue;
+ }
+
g_assert (ji != NULL);
sf->method = mono_method_get_object (domain, ji->method, NULL);
g_assert_not_reached ();
}
+