1
0
mirror of https://sourceware.org/git/glibc.git synced 2025-07-28 00:21:52 +03:00
2001-09-07  Ulrich Drepper  <drepper@redhat.com>

	* include/link.h (struct link_map): Add l_scope_mem and l_scope_max
	elements.  Change l_scope to be a pointer only.
	* elf/dl-object.c (_dl_new_ojbect): Initialize l_scope and l_scope_max.
	* elf/dl-open.c (dl_open_worker): If dependency wasn't just opened
	here add searchlist of newly open file to the dependency's scope.
	* elf/dl-close.c (_dl_close): If dependency is used otherwise remove
	only searchlist from its scope.  Free own scope array if necessary.
	* elf/Makefile (tests): Add dblload and dblunload now.
This commit is contained in:
Ulrich Drepper
2001-09-07 07:57:11 +00:00
parent b98e518f56
commit 5a21d307c5
5 changed files with 89 additions and 3 deletions

View File

@ -50,6 +50,12 @@ _dl_new_object (char *realname, const char *libname, int type,
new->l_loader = loader;
/* new->l_global = 0; We use calloc therefore not necessary. */
/* Use the 'l_scope_mem' array by default for the the 'l_scope'
information. If we need more entries we will allocate a large
array dynamically. */
new->l_scope = new->l_scope_mem;
new->l_scope_max = sizeof (new->l_scope_mem) / sizeof (new->l_scope_mem[0]);
/* Counter for the scopes we have to handle. */
idx = 0;