diff options
author | Philippe Waroquiers <philippe@sourceware.org> | 2013-05-03 19:16:56 +0000 |
---|---|---|
committer | Philippe Waroquiers <philippe@sourceware.org> | 2013-05-03 19:16:56 +0000 |
commit | 96f7d3f1666830257f8942c168640ad8cc8b0ea0 (patch) | |
tree | 35e928066a65da99419fc053b3da25622d0dadd3 /gdb/break-catch-sig.c | |
parent | 1ebff1fdfdbf851157c55915a6a87ba3b3902823 (diff) | |
download | gdb-96f7d3f1666830257f8942c168640ad8cc8b0ea0.zip gdb-96f7d3f1666830257f8942c168640ad8cc8b0ea0.tar.gz gdb-96f7d3f1666830257f8942c168640ad8cc8b0ea0.tar.bz2 |
Fix to handle properly 'catch signal SIGINT' and SIGTRAP
Diffstat (limited to 'gdb/break-catch-sig.c')
-rw-r--r-- | gdb/break-catch-sig.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/gdb/break-catch-sig.c b/gdb/break-catch-sig.c index 4b5ffae..c162cc2 100644 --- a/gdb/break-catch-sig.c +++ b/gdb/break-catch-sig.c @@ -199,13 +199,13 @@ signal_catchpoint_breakpoint_hit (const struct bp_location *bl, VEC_iterate (gdb_signal_type, c->signals_to_be_caught, i, iter); i++) if (signal_number == iter) - break; + return 1; /* Not the same. */ - if (!iter) - return 0; + gdb_assert (!iter); + return 0; } - - return c->catch_all || !INTERNAL_SIGNAL (signal_number); + else + return c->catch_all || !INTERNAL_SIGNAL (signal_number); } /* Implement the "print_it" breakpoint_ops method for signal |