From 1a6402980810854cae28cce1a348d7e5eecd14e0 Mon Sep 17 00:00:00 2001 From: Roland McGrath Date: Thu, 15 Aug 2002 08:43:31 +0000 Subject: * elf/dl-load.c (lose): Remove [!SHARED] conditional from null check on L->l_prev; it can happen under rtld --verify too. --- ChangeLog | 3 +++ elf/dl-load.c | 5 ++--- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/ChangeLog b/ChangeLog index 8cd9f75..7256b36 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,5 +1,8 @@ 2002-08-15 Roland McGrath + * elf/dl-load.c (lose): Remove [!SHARED] conditional from null check + on L->l_prev; it can happen under rtld --verify too. + * locale/loadarchive.c (_nl_load_locale_from_archive): Don't read the header separately, just map an initial window of 2MB from the file and remap if that is not large enough to cover the whole header. diff --git a/elf/dl-load.c b/elf/dl-load.c index dac06c0..89eb6ec 100644 --- a/elf/dl-load.c +++ b/elf/dl-load.c @@ -754,12 +754,11 @@ lose (int code, int fd, const char *name, char *realname, struct link_map *l, { /* Remove the stillborn object from the list and free it. */ assert (l->l_next == NULL); -#ifndef SHARED if (l->l_prev == NULL) - /* No other module loaded. */ + /* No other module loaded. This happens only in the static library, + or in rtld under --verify. */ GL(dl_loaded) = NULL; else -#endif l->l_prev->l_next = NULL; --GL(dl_nloaded); free (l); -- cgit v1.1