1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-30 22:43:12 +03:00
2000-05-09  Jakub Jelinek  <jakub@redhat.com>

	* elf/dl-sym.c (_dl_sym): Test ref not result for non-zero.
	(_dl_vsym): Likewise.
	Reported by Owen Taylor <otaylor@redhat.com>.

	* elf/dl-deps.c (_dl_map_object_deps): Zero terminate L->l_initfini
	always.
This commit is contained in:
Andreas Jaeger
2000-05-10 09:06:56 +00:00
parent fbd61fc16f
commit a8571d373c
3 changed files with 14 additions and 3 deletions

View File

@ -1,3 +1,12 @@
2000-05-09 Jakub Jelinek <jakub@redhat.com>
* elf/dl-sym.c (_dl_sym): Test ref not result for non-zero.
(_dl_vsym): Likewise.
Reported by Owen Taylor <otaylor@redhat.com>.
* elf/dl-deps.c (_dl_map_object_deps): Zero terminate L->l_initfini
always.
2000-05-08 Andreas Jaeger <aj@suse.de> 2000-05-08 Andreas Jaeger <aj@suse.de>
* include/libintl.h: Add prototype for __bind_textdomain_codeset. * include/libintl.h: Add prototype for __bind_textdomain_codeset.

View File

@ -465,7 +465,7 @@ _dl_map_object_deps (struct link_map *map,
/* Store the search list we built in the object. It will be used for /* Store the search list we built in the object. It will be used for
searches in the scope of this object. */ searches in the scope of this object. */
map->l_searchlist.r_list = malloc ((2 * nlist map->l_searchlist.r_list = malloc ((2 * nlist + 1
+ (nlist == nduplist ? 0 : nduplist)) + (nlist == nduplist ? 0 : nduplist))
* sizeof (struct link_map *)); * sizeof (struct link_map *));
if (map->l_searchlist.r_list == NULL) if (map->l_searchlist.r_list == NULL)
@ -549,4 +549,6 @@ _dl_map_object_deps (struct link_map *map,
} }
} }
} }
/* Terminate the list of dependencies. */
map->l_initfini[nlist] = NULL;
} }

View File

@ -74,7 +74,7 @@ RTLD_NEXT used in code not dynamically loaded"));
} }
} }
if (result) if (ref)
return DL_SYMBOL_ADDRESS (result, ref); return DL_SYMBOL_ADDRESS (result, ref);
return NULL; return NULL;
@ -130,7 +130,7 @@ RTLD_NEXT used in code not dynamically loaded"));
map->l_local_scope, &vers, 0); map->l_local_scope, &vers, 0);
} }
if (result) if (ref)
return DL_SYMBOL_ADDRESS (result, ref); return DL_SYMBOL_ADDRESS (result, ref);
return NULL; return NULL;
} }