+2001-06-01 Michael Snyder <msnyder@redhat.com>
+
+ * infrun.c (handle_inferior_event): After singlestepping over a
+ thread-specific breakpoint, use currently_stepping() to decide
+ whether to step or continue.
+
2001-06-01 Jim Blandy <jimb@redhat.com>
* gnu-v3-abi.c (gnu_v3_abi_ops, vtable_type_gdbarch_data): Make
/* We need to restart all the threads now,
* unless we're running in scheduler-locked mode.
- * FIXME: shouldn't we look at currently_stepping ()?
+ * Use currently_stepping to determine whether to
+ * step or continue.
*/
+
if (scheduler_mode == schedlock_on)
- target_resume (ecs->ptid, 0, TARGET_SIGNAL_0);
+ target_resume (ecs->ptid,
+ currently_stepping (ecs), TARGET_SIGNAL_0);
else
- target_resume (RESUME_ALL, 0, TARGET_SIGNAL_0);
+ target_resume (RESUME_ALL,
+ currently_stepping (ecs), TARGET_SIGNAL_0);
ecs->infwait_state = infwait_normal_state;
prepare_to_wait (ecs);
return;
if (remove_status != 0)
{
write_pc_pid (stop_pc - DECR_PC_AFTER_BREAK + 4, ecs->ptid);
+ /* We need to restart all the threads now,
+ * unles we're running in scheduler-locked mode.
+ * Use currently_stepping to determine whether to
+ * step or continue.
+ */
+ if (scheduler_mode == schedlock_on)
+ target_resume (ecs->ptid,
+ currently_stepping (ecs),
+ TARGET_SIGNAL_0);
+ else
+ target_resume (RESUME_ALL,
+ currently_stepping (ecs),
+ TARGET_SIGNAL_0);
+ prepare_to_wait (ecs);
+ return;
}
else
{ /* Single step */
prepare_to_wait (ecs);
return;
}
-
- /* We need to restart all the threads now,
- * unles we're running in scheduler-locked mode.
- * FIXME: shouldn't we look at currently_stepping ()?
- */
- if (scheduler_mode == schedlock_on)
- target_resume (ecs->ptid, 0, TARGET_SIGNAL_0);
- else
- target_resume (RESUME_ALL, 0, TARGET_SIGNAL_0);
- prepare_to_wait (ecs);
- return;
}
else
{