From fdf44873ec6e37417bf8c8ce33bb9b1a6b4ddcef Mon Sep 17 00:00:00 2001 From: Tom Tromey Date: Sun, 8 Oct 2017 14:03:41 -0600 Subject: [PATCH] Remove prepare_re_set_context prepare_re_set_context returns a null cleanup and doesn't seem generally useful. This patch removes it plus a few more cleanups; and changes breakpoint_re_set to use scoped_restore rather than its own manual mechanism. 2017-10-11 Tom Tromey * breakpoint.c (prepare_re_set_context): Remove. (breakpoint_re_set_one): Update. Don't use cleanups. (breakpoint_re_set): Use scoped_restore, std::string, and scoped_restore_current_language. --- gdb/ChangeLog | 7 +++++++ gdb/breakpoint.c | 25 ++++--------------------- 2 files changed, 11 insertions(+), 21 deletions(-) diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e02471646df..6fbe88b569f 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2017-10-11 Tom Tromey + + * breakpoint.c (prepare_re_set_context): Remove. + (breakpoint_re_set_one): Update. Don't use cleanups. + (breakpoint_re_set): Use scoped_restore, std::string, and + scoped_restore_current_language. + 2017-10-11 Tom Tromey * breakpoint.c (commands_command_1): Use std::string. diff --git a/gdb/breakpoint.c b/gdb/breakpoint.c index 975d99e6fc8..6e9c7b7fea5 100644 --- a/gdb/breakpoint.c +++ b/gdb/breakpoint.c @@ -14024,27 +14024,15 @@ decode_location_default (struct breakpoint *b, return {}; } -/* Prepare the global context for a re-set of breakpoint B. */ - -static struct cleanup * -prepare_re_set_context (struct breakpoint *b) -{ - input_radix = b->input_radix; - set_language (b->language); - - return make_cleanup (null_cleanup, NULL); -} - /* Reset a breakpoint. */ static void breakpoint_re_set_one (breakpoint *b) { - struct cleanup *cleanups; + input_radix = b->input_radix; + set_language (b->language); - cleanups = prepare_re_set_context (b); b->ops->re_set (b); - do_cleanups (cleanups); } /* Re-set breakpoint locations for the current program space. @@ -14054,13 +14042,10 @@ void breakpoint_re_set (void) { struct breakpoint *b, *b_tmp; - enum language save_language; - int save_input_radix; - - save_language = current_language->la_language; - save_input_radix = input_radix; { + scoped_restore_current_language save_language; + scoped_restore save_input_radix = make_scoped_restore (&input_radix); scoped_restore_current_pspace_and_thread restore_pspace_thread; /* Note: we must not try to insert locations until after all @@ -14082,8 +14067,6 @@ breakpoint_re_set (void) } END_CATCH } - set_language (save_language); - input_radix = save_input_radix; jit_breakpoint_re_set (); } -- 2.30.2