mirror of
https://github.com/darlinghq/darling-gdb.git
synced 2024-12-11 14:14:23 +00:00
gdb/
Fix stale memory references. * elfread.c (elf_symfile_read): Replace xmalloc by bfd_alloc, drop xfree, new comment.
This commit is contained in:
parent
e552509bcb
commit
3f1eff0a2c
@ -1,3 +1,9 @@
|
||||
2010-11-19 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
|
||||
Fix stale memory references.
|
||||
* elfread.c (elf_symfile_read): Replace xmalloc by bfd_alloc, drop
|
||||
xfree, new comment.
|
||||
|
||||
2010-11-19 Jan Kratochvil <jan.kratochvil@redhat.com>
|
||||
Tom Tromey <tromey@redhat.com>
|
||||
|
||||
|
@ -790,8 +790,14 @@ elf_symfile_read (struct objfile *objfile, int symfile_flags)
|
||||
|
||||
if (storage_needed > 0)
|
||||
{
|
||||
dyn_symbol_table = (asymbol **) xmalloc (storage_needed);
|
||||
make_cleanup (xfree, dyn_symbol_table);
|
||||
/* Memory gets permanently referenced from ABFD after
|
||||
bfd_get_synthetic_symtab so it must not get freed before ABFD gets.
|
||||
It happens only in the case when elf_slurp_reloc_table sees
|
||||
asection->relocation NULL. Determining which section is asection is
|
||||
done by _bfd_elf_get_synthetic_symtab which is all a bfd
|
||||
implementation detail, though. */
|
||||
|
||||
dyn_symbol_table = bfd_alloc (abfd, storage_needed);
|
||||
dynsymcount = bfd_canonicalize_dynamic_symtab (objfile->obfd,
|
||||
dyn_symbol_table);
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user