{
char *name;
int namelen;
+ char *cname;
+ int cnamelen;
assert(m);
if (!vmlog_global_log)
return;
- name = vmlog_concat4len(m->class->name->text,m->class->name->blength,
+ if (m->class) {
+ cname = m->class->name->text;
+ cnamelen = m->class->name->blength;
+ }
+ else {
+ cname = "<NULL>";
+ cnamelen = 6;
+ }
+
+ name = vmlog_concat4len(cname,cnamelen,
".",1,
m->name->text,m->name->blength,
m->descriptor->text,m->descriptor->blength,
name, strlen(name));
}
+void vmlog_cacao_signl_type(int type)
+{
+ char message[20];
+
+ if (!vmlog_global_log)
+ return;
+
+ sprintf(message, "EXC %d", type);
+
+ vmlog_log_signl(vmlog_global_log,(void*) THREADOBJECT,
+ message, strlen(message));
+}
+
void vmlog_cacao_init_options(void)
{
vmlog_cacao_options = vmlog_opt_new();