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

Reply via email to