]> git.ipfire.org Git - thirdparty/glibc.git/commitdiff
* elf/dl-load.c (lose): Remove [!SHARED] conditional from null check
authorRoland McGrath <roland@gnu.org>
Thu, 15 Aug 2002 08:43:31 +0000 (08:43 +0000)
committerRoland McGrath <roland@gnu.org>
Thu, 15 Aug 2002 08:43:31 +0000 (08:43 +0000)
on L->l_prev; it can happen under rtld --verify too.

ChangeLog
elf/dl-load.c

index 8cd9f755cc26e736c30cfd1f8fa31a2449f1131a..7256b36669b90381cc0bf172b08c50fe510914d8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2002-08-15  Roland McGrath  <roland@redhat.com>
 
+       * 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.
index dac06c06176ba4e56d469b723454466334e2e3bf..89eb6eccc9ae6974939e284db94bc7ae508e9590 100644 (file)
@@ -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);