Replace do_restore_instream_cleanup with scoped_restore
This changes the users of do_restore_instream_cleanup to use a scoped_restore instead. This patch is broken out because it warrants some additional attention: in particular it's unclear to me whether current_ui can change in the body of these functions -- but if it can, then the cleanup would have modified a different UI's instream member. ChangeLog 2017-08-03 Tom Tromey <tom@tromey.com> * top.h (do_restore_instream_cleanup): Remove. * top.c (do_restore_instream_cleanup): Remove. (read_command_file): Use scoped_restore. * cli/cli-script.c (execute_user_command): Use scoped_restore.
This commit is contained in:
parent
b51b225eb9
commit
3c9ebddd93
4 changed files with 11 additions and 23 deletions
|
@ -377,7 +377,6 @@ execute_user_command (struct cmd_list_element *c, char *args)
|
|||
{
|
||||
struct ui *ui = current_ui;
|
||||
struct command_line *cmdlines;
|
||||
struct cleanup *old_chain;
|
||||
enum command_control_type ret;
|
||||
extern unsigned int max_user_call_depth;
|
||||
|
||||
|
@ -393,8 +392,8 @@ execute_user_command (struct cmd_list_element *c, char *args)
|
|||
|
||||
/* Set the instream to 0, indicating execution of a
|
||||
user-defined function. */
|
||||
old_chain = make_cleanup (do_restore_instream_cleanup, ui->instream);
|
||||
ui->instream = NULL;
|
||||
scoped_restore restore_instream
|
||||
= make_scoped_restore (&ui->instream, nullptr);
|
||||
|
||||
scoped_restore save_async = make_scoped_restore (¤t_ui->async, 0);
|
||||
|
||||
|
@ -410,7 +409,6 @@ execute_user_command (struct cmd_list_element *c, char *args)
|
|||
}
|
||||
cmdlines = cmdlines->next;
|
||||
}
|
||||
do_cleanups (old_chain);
|
||||
}
|
||||
|
||||
/* This function is called every time GDB prints a prompt. It ensures
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue