From: Rich Felker Date: Sun, 19 Jun 2011 02:52:01 +0000 (-0400) Subject: dynamic linker 64bit fix: hash table entries are always 32bit X-Git-Url: http://nsz.repo.hu/git/?p=musl;a=commitdiff_plain;h=596d60c5650488069ac1bbabb786685ebd3298c1 dynamic linker 64bit fix: hash table entries are always 32bit --- diff --git a/src/ldso/dynlink.c b/src/ldso/dynlink.c index b4444252..8ade0737 100644 --- a/src/ldso/dynlink.c +++ b/src/ldso/dynlink.c @@ -35,7 +35,7 @@ struct dso int refcnt; size_t *dynv; Sym *syms; - size_t *hashtab; + uint32_t *hashtab; char *strings; unsigned char *base; unsigned char *map; @@ -71,7 +71,7 @@ static uint32_t hash(const char *s) return h & 0xfffffff; } -static Sym *lookup(const char *s, uint32_t h, Sym *syms, size_t *hashtab, char *strings) +static Sym *lookup(const char *s, uint32_t h, Sym *syms, uint32_t *hashtab, char *strings) { size_t i; for (i=hashtab[2+h%hashtab[0]]; i; i=hashtab[2+hashtab[0]+i]) {