Hi All, attached patch for the ld.so checks that during symbol lookup process, the DSO has an hash table, otherwise we need to skip over the next into the list.
Regards, Carmelo
Make sure that the DSO has an hash table into its elf, otherwise skip the lookup over next DSO. Signed-off-by: Carmelo Amoroso <[EMAIL PROTECTED]> --- uClibc-trunk/ldso/ldso/dl-hash.c 2007-09-19 11:06:45.000000000 +0200 +++ uClibc-st/ldso/ldso/dl-hash.c 2007-09-19 11:17:03.300685000 +0200 @@ -161,6 +161,10 @@ char *_dl_find_hash(const char *name, st if ((type_class & ELF_RTYPE_CLASS_COPY) && tpnt->libtype == elf_executable) continue; + /* If the hash table is empty there is nothing to do here. */ + if (tpnt->nbucket == 0) + continue; + /* Avoid calling .urem here. */ do_rem(hn, elf_hash_number, tpnt->nbucket); symtab = (ElfW(Sym) *) tpnt->dynamic_info[DT_SYMTAB];
_______________________________________________ uClibc mailing list uClibc@uclibc.org http://busybox.net/cgi-bin/mailman/listinfo/uclibc