This is the mail archive of the
gdb-patches@sourceware.org
mailing list for the GDB project.
[RFA 2/2] Remove last cleanup from btrace code
- From: Tom Tromey <tom at tromey dot com>
- To: gdb-patches at sourceware dot org
- Cc: Tom Tromey <tom at tromey dot com>
- Date: Thu, 7 Jun 2018 16:44:26 -0600
- Subject: [RFA 2/2] Remove last cleanup from btrace code
- References: <20180607224426.6403-1-tom@tromey.com>
This removes the last cleanup from btrace.c, replacing it with a use
of unique_xmalloc_ptr.
2018-06-07 Tom Tromey <tom@tromey.com>
* btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
---
gdb/ChangeLog | 4 ++++
gdb/btrace.c | 11 ++++-------
2 files changed, 8 insertions(+), 7 deletions(-)
diff --git a/gdb/btrace.c b/gdb/btrace.c
index 690770572e8..b8894a24ba0 100644
--- a/gdb/btrace.c
+++ b/gdb/btrace.c
@@ -2056,8 +2056,7 @@ static void
parse_xml_raw (struct gdb_xml_parser *parser, const char *body_text,
gdb_byte **pdata, size_t *psize)
{
- struct cleanup *cleanup;
- gdb_byte *data, *bin;
+ gdb_byte *bin;
size_t len, size;
len = strlen (body_text);
@@ -2066,8 +2065,8 @@ parse_xml_raw (struct gdb_xml_parser *parser, const char *body_text,
size = len / 2;
- bin = data = (gdb_byte *) xmalloc (size);
- cleanup = make_cleanup (xfree, data);
+ gdb::unique_xmalloc_ptr<gdb_byte> data ((gdb_byte *) xmalloc (size));
+ bin = data.get ();
/* We use hex encoding - see common/rsp-low.h. */
while (len > 0)
@@ -2084,9 +2083,7 @@ parse_xml_raw (struct gdb_xml_parser *parser, const char *body_text,
len -= 2;
}
- discard_cleanups (cleanup);
-
- *pdata = data;
+ *pdata = data.release ();
*psize = size;
}
--
2.13.6