aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gdb/ChangeLog4
-rw-r--r--gdb/ada-lang.c5
2 files changed, 5 insertions, 4 deletions
diff --git a/gdb/ChangeLog b/gdb/ChangeLog
index 4a2f813..7825311 100644
--- a/gdb/ChangeLog
+++ b/gdb/ChangeLog
@@ -1,3 +1,7 @@
+2020-02-19 Tom Tromey <tromey@adacore.com>
+
+ * ada-lang.c (cache_symbol): Use obstack_strdup.
+
2020-02-19 Andrew Burgess <andrew.burgess@embecosm.com>
* configure: Regenerate.
diff --git a/gdb/ada-lang.c b/gdb/ada-lang.c
index c5b5fdf..316eaf5 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;