diff options
Diffstat (limited to 'gdb')
-rw-r--r-- | gdb/ChangeLog | 5 | ||||
-rw-r--r-- | gdb/thread.c | 6 |
2 files changed, 9 insertions, 2 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog index 1d6d014..17023ec 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,5 +1,10 @@ 2007-09-10 Daniel Jacobowitz <dan@codesourcery.com> + * thread.c (free_thread): Do not delete the step resume breakpoint + right away. + +2007-09-10 Daniel Jacobowitz <dan@codesourcery.com> + * arch-utils.c (gdbarch_info_fill): Also try core_bfd. * corelow.c (core_read_description): New. (init_core_ops): Set to_read_description. diff --git a/gdb/thread.c b/gdb/thread.c index 563d18a..b6762e1 100644 --- a/gdb/thread.c +++ b/gdb/thread.c @@ -84,9 +84,11 @@ static void free_thread (struct thread_info *tp) { /* NOTE: this will take care of any left-over step_resume breakpoints, - but not any user-specified thread-specific breakpoints. */ + but not any user-specified thread-specific breakpoints. We can not + delete the breakpoint straight-off, because the inferior might not + be stopped at the moment. */ if (tp->step_resume_breakpoint) - delete_breakpoint (tp->step_resume_breakpoint); + tp->step_resume_breakpoint->disposition = disp_del_at_next_stop; /* FIXME: do I ever need to call the back-end to give it a chance at this private data before deleting the thread? */ |