Use unique_xmalloc_ptr in darwin_current_sos

This changes darwin_current_sos to use unique_xmalloc_ptr rather than
a cleanup.

gdb/ChangeLog
2018-06-18  Tom Tromey  <tom@tromey.com>

	* solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
This commit is contained in:
Tom Tromey 2018-05-27 09:31:26 -06:00
parent 309822ca28
commit 668eb2f045
2 changed files with 8 additions and 9 deletions

View File

@ -1,3 +1,7 @@
2018-06-18 Tom Tromey <tom@tromey.com>
* solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
2018-06-18 Tom Tromey <tom@tromey.com>
* solib-frv.c (frv_relocate_main_executable): Use

View File

@ -263,8 +263,6 @@ darwin_current_sos (void)
unsigned long hdr_val;
gdb::unique_xmalloc_ptr<char> file_path;
int errcode;
struct so_list *newobj;
struct cleanup *old_chain;
/* Read image info from inferior. */
if (target_read_memory (iinfo, buf, image_info_size))
@ -293,8 +291,7 @@ darwin_current_sos (void)
break;
/* Create and fill the new so_list element. */
newobj = XCNEW (struct so_list);
old_chain = make_cleanup (xfree, newobj);
gdb::unique_xmalloc_ptr<struct so_list> newobj (XCNEW (struct so_list));
lm_info_darwin *li = new lm_info_darwin;
newobj->lm_info = li;
@ -305,12 +302,10 @@ darwin_current_sos (void)
li->lm_addr = load_addr;
if (head == NULL)
head = newobj;
head = newobj.get ();
else
tail->next = newobj;
tail = newobj;
discard_cleanups (old_chain);
tail->next = newobj.get ();
tail = newobj.release ();
}
return head;