Commit d7e78529 by Andrew MacLeod Committed by Andrew Macleod

except.c (add_new_handler): fix bug in finding last region handler.

Wed Jun 17 16:25:38 EDT 1998  Andrew MacLeod  (amacleod@cygnus.com)
      * except.c (add_new_handler): fix bug in finding last region handler.
      * libgcc2.c (find_exception_handler): Pass exception table pointer
      to runtime type matcher, not the match info field.

From-SVN: r20541
parent 3301dc51
Wed Jun 17 16:25:38 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
* except.c (add_new_handler): fix bug in finding last region handler.
* libgcc2.c (find_exception_handler): Pass exception table pointer
to runtime type matcher, not the match info field.
Wed Jun 17 15:57:48 EDT 1998 Andrew MacLeod (amacleod@cygnus.com) Wed Jun 17 15:57:48 EDT 1998 Andrew MacLeod (amacleod@cygnus.com)
* eh-common.h (struct eh_context): Add comment for hidden use of * eh-common.h (struct eh_context): Add comment for hidden use of
......
...@@ -750,7 +750,8 @@ add_new_handler (region, newhandler) ...@@ -750,7 +750,8 @@ add_new_handler (region, newhandler)
else else
{ {
for ( ; last->next != NULL; last = last->next) for ( ; last->next != NULL; last = last->next)
last->next = newhandler; ;
last->next = newhandler;
} }
} }
......
...@@ -3424,7 +3424,7 @@ find_exception_handler (void *pc, exception_descriptor *table, void *eh_info) ...@@ -3424,7 +3424,7 @@ find_exception_handler (void *pc, exception_descriptor *table, void *eh_info)
/* match info but no matcher is NOT a match */ /* match info but no matcher is NOT a match */
if (matcher) if (matcher)
{ {
ret = (*matcher)(eh_info, tab[pos].match_info, table); ret = (*matcher)(eh_info, &tab[pos], table);
if (ret) if (ret)
{ {
((__eh_info *)eh_info)->coerced_value = ret; ((__eh_info *)eh_info)->coerced_value = ret;
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment