aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog6
-rw-r--r--elf/dl-lookup.c2
2 files changed, 7 insertions, 1 deletions
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 <roland@churchy.gnu.ai.mit.edu>
+
+ * 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 <roland@churchy.gnu.ai.mit.edu>
* 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;