This is the mail archive of the gdb-patches@sources.redhat.com mailing list for the GDB project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [RFA] GDB/624 - tbreak commands not executed when breakpoint hit


Joel Brobecker wrote:
> 
> Michael,
> 
> > Joel, this implementation, with its use of delete_at_next_stop,
> > seems clumsy and, to be frank, scary.  Instead, what if you just
> > made a temporary copy of the tbreak command-list (like you do for
> > GDB/622), then delete the breakpoint, and later execute the commands?
> 
> Thanks for your review. I need a bit of time to delve into this again,
> but I'll be quite busy in the next 2 or 3 weeks. You can consider this
> patch withdrawn in the meantime.

Aww, come on.  ;-)

OK, maybe it's fresher in my mind now than it is in yours.
How about this?
*** breakpoint.joel1.c	Thu Aug 22 17:01:02 2002
--- breakpoint.c	Thu Aug 22 17:56:03 2002
*************** void
*** 6594,6604 ****
  breakpoint_auto_delete (bpstat bs)
  {
    struct breakpoint *b, *temp;
  
    for (; bs; bs = bs->next)
      if (bs->breakpoint_at && bs->breakpoint_at->disposition == disp_del
  	&& bs->stop)
!       delete_breakpoint (bs->breakpoint_at);
  
    ALL_BREAKPOINTS_SAFE (b, temp)
    {
--- 6594,6614 ----
  breakpoint_auto_delete (bpstat bs)
  {
    struct breakpoint *b, *temp;
+   struct command_line *cmd;
  
    for (; bs; bs = bs->next)
      if (bs->breakpoint_at && bs->breakpoint_at->disposition == disp_del
  	&& bs->stop)
!       {
! 	/* Deleting a temp breakpoint.  If it has commands associated
! 	   with it, preserve them in the in the bpstat list, so they
! 	   can be executed by bpstat_do_actions.  */
! 
! 	cmd = copy_command_lines (bs->commands);
! 	make_cleanup_free_command_lines (&cmd);
! 	delete_breakpoint (bs->breakpoint_at);
! 	bs->commands = cmd;
!       }
  
    ALL_BREAKPOINTS_SAFE (b, temp)
    {

Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]