summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDavid Schleef <ds@schleef.org>2001-11-26 09:00:08 +0000
committerDavid Schleef <ds@schleef.org>2001-11-26 09:00:08 +0000
commitb76b3fcd18d8c7e0ed25cccc355f6f0192c1e83b (patch)
tree1277ee361e8b55e25f055a57288ccae087594489
parent2f8a4a06ab17ab61f645335d34061637edb31b2d (diff)
Fix buggy R_PPC_RELATIVE relocation. Symptom was that strings
internal to a library were not relocated correctly, specifically sys_errlist[].
-rw-r--r--ldso/ldso/powerpc/elfinterp.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/ldso/ldso/powerpc/elfinterp.c b/ldso/ldso/powerpc/elfinterp.c
index 36840fac1..db53e8f46 100644
--- a/ldso/ldso/powerpc/elfinterp.c
+++ b/ldso/ldso/powerpc/elfinterp.c
@@ -380,7 +380,7 @@ int _dl_parse_relocation_information(struct elf_resolve *tpnt,
}
break;
case R_PPC_RELATIVE:
- *reloc_addr += (unsigned long)tpnt->loadaddr + addend;
+ *reloc_addr = (unsigned long)tpnt->loadaddr + addend;
break;
case R_PPC_ADDR32:
*reloc_addr += symbol_addr;