* 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.
This commit is contained in:
Daniel Jacobowitz
2004-02-01 18:05:09 +00:00
parent c47cebdbd2
commit fa5281d02b
4 changed files with 20 additions and 5 deletions

View File

@@ -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--;