aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog3
-rw-r--r--elf/dl-lookup.c7
2 files changed, 6 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index a35cbcf..a1a7d50 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
2004-03-09 Ulrich Drepper <drepper@redhat.com>
+ * elf/dl-lookup.c (_dl_lookup_symbol_x): Fix possible NULL pointer
+ derefernce in error message. Pretty printing.
+
* po/nl.po: Update from translation team.
2004-03-08 Andreas Schwab <schwab@suse.de>
diff --git a/elf/dl-lookup.c b/elf/dl-lookup.c
index b05404f..88ac67a 100644
--- a/elf/dl-lookup.c
+++ b/elf/dl-lookup.c
@@ -279,7 +279,7 @@ _dl_lookup_symbol_x (const char *undef_name, struct link_map *undef_map,
&& skip_map == NULL)
{
/* We could find no value for a strong reference. */
- const char *reference_name = undef_map ? undef_map->l_name : NULL;
+ const char *reference_name = undef_map ? undef_map->l_name : "";
const char *versionstr = version ? ", version " : "";
const char *versionname = (version && version->name
? version->name : "");
@@ -313,14 +313,13 @@ _dl_lookup_symbol_x (const char *undef_name, struct link_map *undef_map,
{
struct sym_val protected_value = { NULL, NULL };
- for (scope = symbol_scope; *scope; i = 0, ++scope)
+ for (scope = symbol_scope; *scope != NULL; i = 0, ++scope)
if (do_lookup_x (undef_name, hash, *ref, &protected_value,
*scope, i, version, flags, skip_map,
ELF_RTYPE_CLASS_PLT) != 0)
break;
- if (protected_value.s != NULL
- && protected_value.m != undef_map)
+ if (protected_value.s != NULL && protected_value.m != undef_map)
{
current_value.s = *ref;
current_value.m = undef_map;