From: Roland McGrath Date: Thu, 7 Sep 1995 09:00:05 +0000 (+0000) Subject: Wed Sep 6 19:41:10 1995 Roland McGrath X-Git-Tag: cvs/libc-950922~24 X-Git-Url: https://sourceware.org/git/?a=commitdiff_plain;h=1571a01695e14ec40bbfb41e15161797fa24df96;p=glibc.git Wed Sep 6 19:41:10 1995 Roland McGrath * elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather than WEAK_VALUE.a to see if a weak value has been set. A valid weak value may set WEAK_VALUE.a to 0. --- diff --git a/ChangeLog b/ChangeLog index e8d36d3d13..2b307d66a6 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,9 @@ +Wed Sep 6 19:41:10 1995 Roland McGrath + + * elf/dl-lookup.c (_dl_lookup_symbol): Test WEAK_VALUE.s rather + than WEAK_VALUE.a to see if a weak value has been set. A valid + weak value may set WEAK_VALUE.a to 0. + Fri Sep 1 16:16:12 1995 Roland McGrath * sysdeps/mach/hurd/i386/longjmp-ts.c: Use new array format for diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c index ca0f03489d..62802ddea7 100644 --- a/elf/dl-lookup.c +++ b/elf/dl-lookup.c @@ -87,7 +87,7 @@ _dl_lookup_symbol (const char *undef_name, const Elf32_Sym **ref, return map->l_addr; case STB_WEAK: /* Weak definition. Use this value if we don't find another. */ - if (weak_value.a == 0) + if (! weak_value.s) { weak_value.s = sym; weak_value.a = map->l_addr;