From 1571a01695e14ec40bbfb41e15161797fa24df96 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 7 Sep 1995 09:00:05 +0000 Subject: [PATCH] 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. --- ChangeLog | 6 ++++++ elf/dl-lookup.c | 2 +- 2 files changed, 7 insertions(+), 1 deletion(-) 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;