(elf_link_add_object_symbols): Use correct sh_size

entry for reading verdef records.
Use correct braces for computing increments of extverdaux and
exteverdef record pointers.
This commit is contained in:
Ulrich Drepper
1997-03-03 21:32:39 +00:00
parent ba5b9ebadd
commit d2f0374f23

View File

@ -416,8 +416,8 @@ elf_link_add_object_symbols (abfd, info)
goto error_return; goto error_return;
if (bfd_seek (abfd, verdefhdr->sh_offset, SEEK_SET) != 0 if (bfd_seek (abfd, verdefhdr->sh_offset, SEEK_SET) != 0
|| (bfd_read ((PTR) dynver, 1, hdr->sh_size, abfd) || (bfd_read ((PTR) dynver, 1, verdefhdr->sh_size, abfd)
!= hdr->sh_size)) != verdefhdr->sh_size))
goto error_return; goto error_return;
extverdef = (const Elf_External_Verdef *) dynver; extverdef = (const Elf_External_Verdef *) dynver;
@ -431,7 +431,7 @@ elf_link_add_object_symbols (abfd, info)
/* Pick up the name of the version. */ /* Pick up the name of the version. */
extverdaux = ((const Elf_External_Verdaux *) extverdaux = ((const Elf_External_Verdaux *)
(bfd_byte *) extverdef + intverdef->vd_aux); ((bfd_byte *) extverdef + intverdef->vd_aux));
_bfd_elf_swap_verdaux_in (abfd, extverdaux, &intverdaux); _bfd_elf_swap_verdaux_in (abfd, extverdaux, &intverdaux);
intverdef->vd_bfd = abfd; intverdef->vd_bfd = abfd;
@ -440,7 +440,7 @@ elf_link_add_object_symbols (abfd, info)
intverdaux.vda_name); intverdaux.vda_name);
extverdef = ((const Elf_External_Verdef *) extverdef = ((const Elf_External_Verdef *)
(bfd_byte *) extverdef + intverdef->vd_next); ((bfd_byte *) extverdef + intverdef->vd_next));
} }
free (dynver); free (dynver);