diff options
author | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-10-29 13:46:25 +0000 |
---|---|---|
committer | Joakim Tjernlund <joakim.tjernlund@transmode.se> | 2005-10-29 13:46:25 +0000 |
commit | c4f31d2e430ec265ee528b91d87f1d3d8c64997e (patch) | |
tree | 6847d1c2ca7f5eec36fc4dbc69f39a4e9e68d872 /ldso/ldso/powerpc | |
parent | 30c664f0a795bace5c99bedc936228780dba3256 (diff) |
Hopefully fix the bug Oleg reported in http://uclibc.org/lists/uclibc/2005-October/012809.html
This will only fix powerpc. Should be easy to fix the other arches.
Diffstat (limited to 'ldso/ldso/powerpc')
-rw-r--r-- | ldso/ldso/powerpc/elfinterp.c | 10 |
1 files changed, 5 insertions, 5 deletions
diff --git a/ldso/ldso/powerpc/elfinterp.c b/ldso/ldso/powerpc/elfinterp.c index 4ec459854..3dd12f0ee 100644 --- a/ldso/ldso/powerpc/elfinterp.c +++ b/ldso/ldso/powerpc/elfinterp.c @@ -138,7 +138,7 @@ unsigned long _dl_linux_resolver(struct elf_resolve *tpnt, int reloc_entry) finaladdr = (Elf32_Addr) _dl_find_hash(symname, tpnt->symbol_scope, tpnt, ELF_RTYPE_CLASS_PLT); if (unlikely(!finaladdr)) { - _dl_dprintf(2, "%s: can't resolve symbol '%s'\n", _dl_progname, symname); + _dl_dprintf(2, "%s: can't resolve symbol '%s' in lib '%s'.\n", _dl_progname, symname, tpnt->libname); _dl_exit(1); }; finaladdr += this_reloc->r_addend; @@ -379,15 +379,15 @@ _dl_parse(struct elf_resolve *tpnt, struct dyn_elf *scope, { int reloc_type = ELF32_R_TYPE(rpnt->r_info); #if defined (__SUPPORT_LD_DEBUG__) - _dl_dprintf(2, "can't handle reloc type %s\n ", _dl_reltypes(reloc_type)); + _dl_dprintf(2, "can't handle reloc type '%s' in lib '%s'\n", _dl_reltypes(reloc_type), tpnt->libname); #else - _dl_dprintf(2, "can't handle reloc type %x\n", reloc_type); + _dl_dprintf(2, "can't handle reloc type %x in lib '%s'\n", reloc_type, tpnt->libname); #endif - _dl_exit(-res); + return res; } if (unlikely(res >0)) { - _dl_dprintf(2, "can't resolve symbol\n"); + _dl_dprintf(2, "can't resolve symbol in lib '%s'.\n", tpnt->libname); return res; } } |