+2004-07-13 Christof Petig <christof@petig-baender.de>
+
+ * emultempl/pe.em (make_import_fixup): Use bfd_get_32 to correct
+ for endian-ness of extracted addend.
+
2004-07-13 Danny Smith <dannysmith@usesr.sourceforge.net>
* pe-dll.c (auto_export): Filter on just the import prefix,
make_import_fixup (arelent *rel, asection *s)
{
struct bfd_symbol *sym = *rel->sym_ptr_ptr;
- int addend = 0;
+ char addend[4];
if (pe_dll_extra_pe_debug)
printf ("arelent: %s@%#lx: add=%li\n", sym->name,
(long) rel->address, (long) rel->addend);
- if (! bfd_get_section_contents (s->owner, s, &addend, rel->address, sizeof (addend)))
+ if (! bfd_get_section_contents (s->owner, s, addend, rel->address, sizeof (addend)))
einfo (_("%C: Cannot get section contents - auto-import exception\n"),
s->owner, s, rel->address);
- pe_create_import_fixup (rel, s, addend);
+ pe_create_import_fixup (rel, s, bfd_get_32 (s->owner, addend));
return 1;
}