forked from Imagelibrary/binutils-gdb
* elf-bfd.h (_bfd_elf_strtab_refcount): Declare.
* elf-strtab.c (_bfd_elf_strtab_refcount): New function. * elflink.c (elf_add_dt_needed_tag): Use _bfd_elf_strtab_refcount.
This commit is contained in:
@@ -3091,19 +3091,17 @@ elf_add_dt_needed_tag (bfd *abfd,
|
||||
bfd_boolean do_it)
|
||||
{
|
||||
struct elf_link_hash_table *hash_table;
|
||||
bfd_size_type oldsize;
|
||||
bfd_size_type strindex;
|
||||
|
||||
if (!_bfd_elf_link_create_dynstrtab (abfd, info))
|
||||
return -1;
|
||||
|
||||
hash_table = elf_hash_table (info);
|
||||
oldsize = _bfd_elf_strtab_size (hash_table->dynstr);
|
||||
strindex = _bfd_elf_strtab_add (hash_table->dynstr, soname, FALSE);
|
||||
if (strindex == (bfd_size_type) -1)
|
||||
return -1;
|
||||
|
||||
if (oldsize == _bfd_elf_strtab_size (hash_table->dynstr))
|
||||
if (_bfd_elf_strtab_refcount (hash_table->dynstr, strindex) != 1)
|
||||
{
|
||||
asection *sdyn;
|
||||
const struct elf_backend_data *bed;
|
||||
|
||||
Reference in New Issue
Block a user