[pushed] Use obstack_strdup in ada-lang.c

Tom Tromey tromey@adacore.com
Wed Feb 19 18:08:00 GMT 2020


I happened across a spot that was still using obstack_alloc and
strcpy, rather than obstack_strdup.  This patch makes the obvious fix.

gdb/ChangeLog
2020-02-19  Tom Tromey  <tromey@adacore.com>

	* ada-lang.c (cache_symbol): Use obstack_strdup.
---
 gdb/ChangeLog  | 4 ++++
 gdb/ada-lang.c | 5 +----
 2 files changed, 5 insertions(+), 4 deletions(-)

diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index c5b5fdf169f..316eaf50b9a 100644
--- a/gdb/ada-lang.c
+++ b/gdb/ada-lang.c
@@ -4710,7 +4710,6 @@ cache_symbol (const char *name, domain_enum domain, struct symbol *sym,
   struct ada_symbol_cache *sym_cache
     = ada_get_symbol_cache (current_program_space);
   int h;
-  char *copy;
   struct cache_entry *e;
 
   /* Symbols for builtin types don't have a block.
@@ -4733,9 +4732,7 @@ cache_symbol (const char *name, domain_enum domain, struct symbol *sym,
   e = XOBNEW (&sym_cache->cache_space, cache_entry);
   e->next = sym_cache->root[h];
   sym_cache->root[h] = e;
-  e->name = copy
-    = (char *) obstack_alloc (&sym_cache->cache_space, strlen (name) + 1);
-  strcpy (copy, name);
+  e->name = obstack_strdup (&sym_cache->cache_space, name);
   e->sym = sym;
   e->domain = domain;
   e->block = block;
-- 
2.21.1



More information about the Gdb-patches mailing list