Re: Reverse debugging

Hui Zhu
2009-07-16T03:09:34Z

Thanks Nick, I think the better way is add a special cmd for it.

Marc, do you have some ideas with it?

Thanks,
Hui

On Wed, Jul 15, 2009 at 10:27, Nick Roberts<nickrob@snap.net.nz> wrote:
> I've created tool bar functionality in Emacs for reverse debugging a bit like
> that in the DSF-GDB debugger for Eclipse, I think.
>
> It works quite nicely and I would like to include it in Emacs 23.2 (23.1
> should be coming out next week) but there is one small problem with "record
> stop".  It currently prompts the user for confirmation and Emacs can't handle
> that from the tool bar and update the GUI.  Would it be possible to add a
> "noconfirm" option, perhaps like below, which should be invisible to the
> normal user?
>
> --
> Nick                                           http://www.inet.net.nz/~nickrob
>
>
> 2009-07-15  Nick Roberts  <nickrob@snap.net.nz>
>
>        * record.c (cmd_record_stop): Add a "noconfirm" option to the
>        "record stop" command.
>
>
> Index: record.c
> ===================================================================
> RCS file: /cvs/src/src/gdb/record.c,v
> retrieving revision 1.8
> diff -c -p -r1.8 record.c
> *** record.c    2 Jul 2009 17:21:06 -0000       1.8
> --- record.c    15 Jul 2009 02:25:21 -0000
> *************** cmd_record_stop (char *args, int from_tt
> *** 1157,1164 ****
>  {
>    if (current_target.to_stratum == record_stratum)
>      {
> !       if (!record_list || !from_tty || query (_("Delete recorded log and "
> !                                               "stop recording?")))
>        unpush_target (&record_ops);
>      }
>    else
> --- 1157,1168 ----
>  {
>    if (current_target.to_stratum == record_stratum)
>      {
> !       int noconfirm = 0;
> !       if (args)
> !         noconfirm = (strcmp (args, "noconfirm") == 0) ? 1 : 0;
> !
> !       if (!record_list || !from_tty || noconfirm
> !         || query (_("Delete recorded log and stop recording?")))
>        unpush_target (&record_ops);
>      }
>    else
>