diff options
author | Tristan Gingold <gingold@adacore.com> | 2010-02-08 09:13:47 +0000 |
---|---|---|
committer | Tristan Gingold <gingold@adacore.com> | 2010-02-08 09:13:47 +0000 |
commit | 06988dfc57d0d03fd576e5949f52b8745278c0ab (patch) | |
tree | 6ef26706768b10f7a77c53994f59262dfd68757a /bfd/mach-o.c | |
parent | deddc40bec6db30c02fa73f1e83619bc62c87196 (diff) | |
download | fsf-binutils-gdb-06988dfc57d0d03fd576e5949f52b8745278c0ab.zip fsf-binutils-gdb-06988dfc57d0d03fd576e5949f52b8745278c0ab.tar.gz fsf-binutils-gdb-06988dfc57d0d03fd576e5949f52b8745278c0ab.tar.bz2 |
2010-02-08 Tristan Gingold <gingold@adacore.com>
* mach-o.c (bfd_mach_o_canonicalize_one_reloc): Set reloc.r_extern
for non-scattered relocations.
Diffstat (limited to 'bfd/mach-o.c')
-rw-r--r-- | bfd/mach-o.c | 6 |
1 files changed, 5 insertions, 1 deletions
diff --git a/bfd/mach-o.c b/bfd/mach-o.c index 20279c4..57d774b 100644 --- a/bfd/mach-o.c +++ b/bfd/mach-o.c @@ -705,12 +705,16 @@ bfd_mach_o_canonicalize_one_reloc (bfd *abfd, char *buf, res->addend = 0; res->address = addr; if (symnum & BFD_MACH_O_R_EXTERN) - sym = syms + num; + { + sym = syms + num; + reloc.r_extern = 1; + } else { BFD_ASSERT (num != 0); BFD_ASSERT (num <= mdata->nsects); sym = mdata->sections[num - 1]->bfdsection->symbol_ptr_ptr; + reloc.r_extern = 0; } res->sym_ptr_ptr = sym; reloc.r_type = BFD_MACH_O_GET_R_TYPE (symnum); |