aboutsummaryrefslogtreecommitdiff
path: root/gdb/mi/mi-cmd-catch.c
diff options
context:
space:
mode:
authorTom Tromey <tom@tromey.com>2017-08-13 10:55:28 -0600
committerTom Tromey <tom@tromey.com>2017-09-11 16:15:07 -0600
commit00f675ff65ff6f78712a46e9699856e935d86d86 (patch)
treee8c8d050598c69c8c47a8b451e18260f7a1704ae /gdb/mi/mi-cmd-catch.c
parentcb791d59489576280e416262eb61ab59765a0baf (diff)
downloadfsf-binutils-gdb-00f675ff65ff6f78712a46e9699856e935d86d86.zip
fsf-binutils-gdb-00f675ff65ff6f78712a46e9699856e935d86d86.tar.gz
fsf-binutils-gdb-00f675ff65ff6f78712a46e9699856e935d86d86.tar.bz2
Change setup_breakpoint_reporting to return a scoped_restore
This changes setup_breakpoint_reporting to return a scoped_restore, allowing for some cleanup removal. ChangeLog 2017-09-11 Tom Tromey <tom@tromey.com> * mi/mi-cmd-catch.c (mi_cmd_catch_assert) (mi_cmd_catch_exception, mi_catch_load_unload): Update. * mi/mi-cmd-break.c (setup_breakpoint_reporting): Return a scoped_restore. (mi_cmd_break_insert_1): Update. * mi/mi-cmd-break.h (setup_breakpoint_reporting): Return a scoped_restore.
Diffstat (limited to 'gdb/mi/mi-cmd-catch.c')
-rw-r--r--gdb/mi/mi-cmd-catch.c10
1 files changed, 3 insertions, 7 deletions
diff --git a/gdb/mi/mi-cmd-catch.c b/gdb/mi/mi-cmd-catch.c
index a767ee7..0e1fb7e 100644
--- a/gdb/mi/mi-cmd-catch.c
+++ b/gdb/mi/mi-cmd-catch.c
@@ -79,7 +79,7 @@ mi_cmd_catch_assert (const char *cmd, char *argv[], int argc)
if (oind != argc)
error (_("Invalid argument: %s"), argv[oind]);
- setup_breakpoint_reporting ();
+ scoped_restore restore_breakpoint_reporting = setup_breakpoint_reporting ();
/* create_ada_exception_catchpoint needs CONDITION to be xstrdup'ed,
and will assume control of its lifetime. */
if (condition != NULL)
@@ -156,7 +156,7 @@ mi_cmd_catch_exception (const char *cmd, char *argv[], int argc)
if (ex_kind == ada_catch_exception_unhandled && exception_name != NULL)
error (_("\"-e\" and \"-u\" are mutually exclusive"));
- setup_breakpoint_reporting ();
+ scoped_restore restore_breakpoint_reporting = setup_breakpoint_reporting ();
/* create_ada_exception_catchpoint needs EXCEPTION_NAME and CONDITION
to be xstrdup'ed, and will assume control of their lifetime. */
if (exception_name != NULL)
@@ -173,7 +173,6 @@ mi_cmd_catch_exception (const char *cmd, char *argv[], int argc)
static void
mi_catch_load_unload (int load, char *argv[], int argc)
{
- struct cleanup *back_to;
const char *actual_cmd = load ? "-catch-load" : "-catch-unload";
int temp = 0;
int enabled = 1;
@@ -215,11 +214,8 @@ mi_catch_load_unload (int load, char *argv[], int argc)
if (oind < argc -1)
error (_("-catch-load/unload: Garbage following the <library name>"));
- back_to = setup_breakpoint_reporting ();
-
+ scoped_restore restore_breakpoint_reporting = setup_breakpoint_reporting ();
add_solib_catchpoint (argv[oind], load, temp, enabled);
-
- do_cleanups (back_to);
}
/* Handler for the -catch-load. */