Do not assume that either bfd is an archive
This commit is contained in:
parent
62e88f3c0c
commit
c034e3e0ec
|
@ -1,3 +1,8 @@
|
|||
2004-08-27 Nick Clifton <nickc@redhat.com>
|
||||
|
||||
* emultempl/pe.em (after_open): Do not assume that either bfd is
|
||||
an archive.
|
||||
|
||||
2004-08-26 Alan Modra <amodra@bigpond.net.au>
|
||||
|
||||
* ldlang.c (lang_init): Don't compare with TRUE.
|
||||
|
|
|
@ -1096,17 +1096,19 @@ gld_${EMULATION_NAME}_after_open (void)
|
|||
continue;
|
||||
|
||||
other_bfd = blhe->u.def.section->owner;
|
||||
#define bfd_filename(bfd) ((bfd)->my_archive ? bfd_get_filename ((bfd)->my_archive) : bfd_get_filename (bfd))
|
||||
|
||||
if (strcmp (is->the_bfd->my_archive->filename,
|
||||
other_bfd->my_archive->filename) == 0)
|
||||
if (strcmp (bfd_filename (is->the_bfd),
|
||||
bfd_filename (other_bfd)) == 0)
|
||||
continue;
|
||||
|
||||
/* Rename this implib to match the other. */
|
||||
n = (char *) xmalloc (strlen (other_bfd->my_archive->filename) + 1);
|
||||
/* Rename this implib to match the other one. */
|
||||
n = xmalloc (strlen (bfd_filename (other_bfd)) + 1);
|
||||
|
||||
strcpy (n, other_bfd->my_archive->filename);
|
||||
strcpy (n, bfd_filename (other_bfd));
|
||||
|
||||
is->the_bfd->my_archive->filename = n;
|
||||
bfd_filename (is->the_bfd) = n;
|
||||
#undef bfd_filename
|
||||
}
|
||||
|
||||
free (relocs);
|
||||
|
|
Loading…
Reference in New Issue