...but don't catch foreign exceptions in catch statements for the boxing class's superclass.

main
theraven 15 years ago
parent 4e5578b0be
commit fc28010846

@ -157,11 +157,15 @@ static handler_type check_action_record(struct _Unwind_Context *context,
return handler_catchall_id; return handler_catchall_id;
} }
} }
else if (isKindOfClass(thrown_class, type)) else if (!foreignException && isKindOfClass(thrown_class, type))
{ {
fprintf(stderr, "found handler for %s\n", type->name); fprintf(stderr, "found handler for %s\n", type->name);
return handler_class; return handler_class;
} }
else if (thrown_class == type)
{
return handler_class;
}
} }
else if (filter == 0) else if (filter == 0)
{ {

Loading…
Cancel
Save