diff options
author | Eric Andersen <andersen@codepoet.org> | 2003-11-06 22:09:38 +0000 |
---|---|---|
committer | Eric Andersen <andersen@codepoet.org> | 2003-11-06 22:09:38 +0000 |
commit | 7e617ab5308b2dadf231dbe77739ccfceec8c205 (patch) | |
tree | 6e9d5c18f800eba00720a58c7373851df037f99e | |
parent | d5465499fbc28031bc047f0cdcf13c1dde89b923 (diff) |
Revert change 1.26, which breaks everything. :-(
-rw-r--r-- | ldso/ldso/i386/elfinterp.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/ldso/ldso/i386/elfinterp.c b/ldso/ldso/i386/elfinterp.c index 78591b030..5ccad3259 100644 --- a/ldso/ldso/i386/elfinterp.c +++ b/ldso/ldso/i386/elfinterp.c @@ -114,14 +114,15 @@ unsigned long _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry) ELF_RELOC *this_reloc; char *strtab; Elf32_Sym *symtab; - ELF_RELOC *rel_addr; int symtab_index; + char *rel_addr; char *new_addr; char **got_addr; unsigned long instr_addr; char *symname; - rel_addr = (ELF_RELOC *) (tpnt->dynamic_info[DT_JMPREL] + tpnt->loadaddr); + rel_addr = (char *) (tpnt->dynamic_info[DT_JMPREL] + tpnt->loadaddr); + this_reloc = (ELF_RELOC *)(intptr_t)(rel_addr + reloc_entry); reloc_type = ELF32_R_TYPE(this_reloc->r_info); symtab_index = ELF32_R_SYM(this_reloc->r_info); |