This is the mail archive of the
gdb-cvs@sourceware.org
mailing list for the GDB project.
[binutils-gdb] Remove a string copy from event_location_to_sals
- From: Tom Tromey <tromey at sourceware dot org>
- To: gdb-cvs at sourceware dot org
- Date: 5 Apr 2018 13:40:22 -0000
- Subject: [binutils-gdb] Remove a string copy from event_location_to_sals
https://sourceware.org/git/gitweb.cgi?p=binutils-gdb.git;h=9be2c17a900178df75a2208fd112ceb4325a70c1
commit 9be2c17a900178df75a2208fd112ceb4325a70c1
Author: Tom Tromey <tom@tromey.com>
Date: Sat Mar 31 12:21:10 2018 -0600
Remove a string copy from event_location_to_sals
The use of "const" showed that a string copy in event_location_to_sals
was unnecessary. This patch removes it.
ChangeLog
2018-04-05 Tom Tromey <tom@tromey.com>
* linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
Remove a string copy.
Diff:
---
gdb/ChangeLog | 5 +++++
gdb/linespec.c | 8 +-------
2 files changed, 6 insertions(+), 7 deletions(-)
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 32ace23..b88f503 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,5 +1,10 @@
2018-04-05 Tom Tromey <tom@tromey.com>
+ * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
+ Remove a string copy.
+
+2018-04-05 Tom Tromey <tom@tromey.com>
+
* linespec.c (filter_results): Use std::vector.
(decode_line_2, decode_line_full): Update.
diff --git a/gdb/linespec.c b/gdb/linespec.c
index 91dabb6..1e1ce2a 100644
--- a/gdb/linespec.c
+++ b/gdb/linespec.c
@@ -3165,16 +3165,10 @@ event_location_to_sals (linespec_parser *parser,
if (addr_string != NULL)
{
- char *expr = xstrdup (addr_string);
- const char *const_expr = expr;
- struct cleanup *cleanup = make_cleanup (xfree, expr);
-
- addr = linespec_expression_to_pc (&const_expr);
+ addr = linespec_expression_to_pc (&addr_string);
if (PARSER_STATE (parser)->canonical != NULL)
PARSER_STATE (parser)->canonical->location
= copy_event_location (location);
-
- do_cleanups (cleanup);
}
result = convert_address_location_to_sals (PARSER_STATE (parser),