diff options
author | Daniel Jacobowitz <drow@false.org> | 2004-02-01 18:05:09 +0000 |
---|---|---|
committer | Daniel Jacobowitz <drow@false.org> | 2004-02-01 18:05:09 +0000 |
commit | fa5281d02b823b7a847bea43a39d6bcc7b75580a (patch) | |
tree | de40515eab996e6c8ae2cdcc9cfdfaf7a197f4e2 /gdb/breakpoint.c | |
parent | c47cebdbd2d971feefd839a61213a0ec643c46bf (diff) | |
download | gdb-fa5281d02b823b7a847bea43a39d6bcc7b75580a.zip gdb-fa5281d02b823b7a847bea43a39d6bcc7b75580a.tar.gz gdb-fa5281d02b823b7a847bea43a39d6bcc7b75580a.tar.bz2 |
* breakpoint.c (bpstat_stop_status): Take a ptid_t argument,
and check the specified thread for each breakpoint.
* breakpoint.h (bpstat_stop_status): Update prototype.
* infrun.c (handle_inferior_event): Update calls to
bpstat_stop_status.
Diffstat (limited to 'gdb/breakpoint.c')
-rw-r--r-- | gdb/breakpoint.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 11827f4..ebd73f1 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -2588,7 +2588,7 @@ which its expression is valid.\n"); commands, FIXME??? fields. */ bpstat -bpstat_stop_status (CORE_ADDR bp_addr) +bpstat_stop_status (CORE_ADDR bp_addr, ptid_t ptid) { struct breakpoint *b, *temp; /* True if we've hit a breakpoint (as opposed to a watchpoint). */ @@ -2597,6 +2597,7 @@ bpstat_stop_status (CORE_ADDR bp_addr) struct bpstats root_bs[1]; /* Pointer to the last thing in the chain currently. */ bpstat bs = root_bs; + int thread_id = pid_to_thread_id (ptid); ALL_BREAKPOINTS_SAFE (b, temp) { @@ -2850,6 +2851,12 @@ bpstat_stop_status (CORE_ADDR bp_addr) /* Don't consider this a hit. */ --(b->hit_count); } + else if (b->thread != -1 && b->thread != thread_id) + { + bs->stop = 0; + /* Don't consider this a hit. */ + --(b->hit_count); + } else if (b->ignore_count > 0) { b->ignore_count--; |