aboutsummaryrefslogtreecommitdiff
path: root/gdb/interps.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2018-04-29 23:12:04 -0600
committerTom Tromey <tom@tromey.com>2018-05-25 12:41:00 -0600
commit753ff9bd837e2ba183e3ff789847a81221561392 (patch)
tree8e8394abbe5a01569ad1a04663851af629f4ed3a /gdb/interps.c
parent5ca3b2605cc9ab5b33032c6478147366be60cd95 (diff)
downloadgdb-753ff9bd837e2ba183e3ff789847a81221561392.zip
gdb-753ff9bd837e2ba183e3ff789847a81221561392.tar.gz
gdb-753ff9bd837e2ba183e3ff789847a81221561392.tar.bz2
Use scoped_restore in a couple of interp-related places
While looking through the "interp" code I found a couple of spots that could use scoped_restore. ChangeLog 2018-05-25 Tom Tromey <tom@tromey.com> * cli/cli-interp.c (safe_execute_command): Use scoped_restore. * interps.c (interp_exec): Use scoped_restore.
Diffstat (limited to 'gdb/interps.c')
-rw-r--r--gdb/interps.c13
1 files changed, 3 insertions, 10 deletions
diff --git a/gdb/interps.c b/gdb/interps.c
index 61db7f4..162cd83 100644
--- a/gdb/interps.c
+++ b/gdb/interps.c
@@ -354,18 +354,11 @@ interp_exec (struct interp *interp, const char *command_str)
{
struct ui_interp_info *ui_interp = get_current_interp_info ();
- struct gdb_exception ex;
- struct interp *save_command_interp;
-
/* See `command_interp' for why we do this. */
- save_command_interp = ui_interp->command_interpreter;
- ui_interp->command_interpreter = interp;
-
- ex = interp->exec (command_str);
-
- ui_interp->command_interpreter = save_command_interp;
+ scoped_restore save_command_interp
+ = make_scoped_restore (&ui_interp->command_interpreter, interp);
- return ex;
+ return interp->exec (command_str);
}
/* A convenience routine that nulls out all the common command hooks.