From 1ebba33ece5a998d3d79fa14adca3ae7985cbff5 Mon Sep 17 00:00:00 2001 From: Ulrich Drepper Date: Wed, 16 Aug 2000 06:30:08 +0000 Subject: Update. 2000-08-15 Ulrich Drepper * sysdeps/generic/ldsodefs.h: Declare _nl_nloaded. * elf/Versions [ld] (GLIBC_2.2): Add _nl_nloaded. * elf/dl-support.c: Define _nl_nloaded. * elf/rtld.c: Likewise. Increment _nl_nloaded for rtld itself. * elf/dl-object.c (_dl_new_object): Increment _nl_nloaded after adding object to global list. * elf/dl-close.c (_dl_close): Decrement _nl_nloaded after removing from _dl_loaded list. * elf/dl-load.c (_dl_map_object_from_fd): Likewise. * elf/dl-fini.c (_dl_fini): Use _nl_nloaded instead of computing the number here. * sysdeps/i386/fpu/fedisblxcpt.c (fedisableexcept): Mask, not unmask, exceptions. * sysdeps/i386/fpu/feenablxcpt.c (feenableexcept): Unmask, not mask, exceptions. Reported by Harvey J. Stein . --- elf/dl-load.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) (limited to 'elf/dl-load.c') diff --git a/elf/dl-load.c b/elf/dl-load.c index a1e4e5a47f..ffaca6e55d 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -1105,13 +1105,14 @@ _dl_map_object_from_fd (const char *name, int fd, char *realname, { /* Remove from the module list. */ assert (l->l_next == NULL); -#ifdef SHARED +#ifndef SHARED if (l->l_prev == NULL) /* No other module loaded. */ _dl_loaded = NULL; else #endif l->l_prev->l_next = NULL; + --_dl_nloaded; /* We are not supposed to load this object. Free all resources. */ __munmap ((void *) l->l_map_start, l->l_map_end - l->l_map_start); -- cgit v1.2.3