From: Tom Tromey Date: Thu, 24 Jan 2019 13:41:12 +0000 (-0700) Subject: Remove last cleanups from solib-svr4.c X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=2b6ff1c0474fca286b95be7ae9dcc5a22ff2a0b9;p=binutils-gdb.git Remove last cleanups from solib-svr4.c This removes the last cleanups from solib-svr4.c, replacing them with uses of make_scope_exit. 2019-03-06 Tom Tromey * solib-svr4.c (svr4_parse_libraries, svr4_current_sos_direct): Use make_scope_exit. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index e7c6a18bd23..0a3698e888a 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,8 @@ +2019-03-06 Tom Tromey + + * solib-svr4.c (svr4_parse_libraries, svr4_current_sos_direct): + Use make_scope_exit. + 2019-03-06 Tom Tromey * solib-svr4.c (disable_probes_interface): Remove parameter. diff --git a/gdb/solib-svr4.c b/gdb/solib-svr4.c index 2b370ef96d0..84693c17666 100644 --- a/gdb/solib-svr4.c +++ b/gdb/solib-svr4.c @@ -1198,8 +1198,10 @@ static const struct gdb_xml_element svr4_library_list_elements[] = static int svr4_parse_libraries (const char *document, struct svr4_library_list *list) { - struct cleanup *back_to = make_cleanup (svr4_free_library_list, - &list->head); + auto cleanup = make_scope_exit ([&] () + { + svr4_free_library_list (&list->head); + }); memset (list, 0, sizeof (*list)); list->tailp = &list->head; @@ -1207,11 +1209,10 @@ svr4_parse_libraries (const char *document, struct svr4_library_list *list) svr4_library_list_elements, document, list) == 0) { /* Parsed successfully, keep the result. */ - discard_cleanups (back_to); + cleanup.release (); return 1; } - do_cleanups (back_to); return 0; } @@ -1374,7 +1375,6 @@ svr4_current_sos_direct (struct svr4_info *info) CORE_ADDR lm; struct so_list *head = NULL; struct so_list **link_ptr = &head; - struct cleanup *back_to; int ignore_first; struct svr4_library_list library_list; @@ -1412,7 +1412,10 @@ svr4_current_sos_direct (struct svr4_info *info) else ignore_first = 1; - back_to = make_cleanup (svr4_free_library_list, &head); + auto cleanup = make_scope_exit ([&] () + { + svr4_free_library_list (&head); + }); /* Walk the inferior's link map list, and build our list of `struct so_list' nodes. */ @@ -1428,7 +1431,7 @@ svr4_current_sos_direct (struct svr4_info *info) if (lm) svr4_read_so_list (lm, 0, &link_ptr, 0); - discard_cleanups (back_to); + cleanup.release (); if (head == NULL) return svr4_default_sos ();