diff options
-rw-r--r-- | ldso/ldso/i386/elfinterp.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/ldso/ldso/i386/elfinterp.c b/ldso/ldso/i386/elfinterp.c index d53605c19..92e415664 100644 --- a/ldso/ldso/i386/elfinterp.c +++ b/ldso/ldso/i386/elfinterp.c @@ -191,10 +191,8 @@ _dl_do_reloc(struct elf_resolve *tpnt, struct dyn_elf *scope, * might have been intentional. We should not be linking local * symbols here, so all bases should be covered. */ - if (unlikely(!symbol_addr && ELF32_ST_BIND(symtab[symtab_index].st_info) != STB_WEAK)) { - _dl_dprintf(2, "%s: can't resolve symbol '%s'\n", _dl_progname, symname); - _dl_exit(1); - }; + if (unlikely(!symbol_addr && ELF32_ST_BIND(symtab[symtab_index].st_info) != STB_WEAK)) + return 1; } #if defined (__SUPPORT_LD_DEBUG__) @@ -233,7 +231,7 @@ _dl_do_reloc(struct elf_resolve *tpnt, struct dyn_elf *scope, } break; default: - return -1; /* Calls _dl_exit(1). */ + return -1; } #if defined (__SUPPORT_LD_DEBUG__) @@ -273,7 +271,7 @@ _dl_do_lazy_reloc(struct elf_resolve *tpnt, struct dyn_elf *scope, *reloc_addr += (unsigned long)tpnt->loadaddr; break; default: - return -1; /* Calls _dl_exit(1). */ + return -1; } #if defined (__SUPPORT_LD_DEBUG__) |