Update.
authorUlrich Drepper <drepper@redhat.com>
Sun, 30 Jun 2002 08:26:20 +0000 (08:26 +0000)
committerUlrich Drepper <drepper@redhat.com>
Sun, 30 Jun 2002 08:26:20 +0000 (08:26 +0000)
2002-05-28  H.J. Lu  <hjl@gnu.org>

* elf/dl-deps.c (_dl_map_object_deps): Don't add objects which
are not dlopened on the dependency list of a dlopened object.

ChangeLog
elf/dl-deps.c
elf/dl-lookup.c

index b8b3a27..6852760 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+2002-05-28  H.J. Lu  <hjl@gnu.org>
+
+       * elf/dl-deps.c (_dl_map_object_deps): Don't add objects which
+       are not dlopened on the dependency list of a dlopened object.
+
 2002-06-30  Ulrich Drepper  <drepper@redhat.com>
 
        * elf/dl-lookup.c (add_dependency): It is not necessary to add
index 9fd2dd2..7842013 100644 (file)
@@ -254,6 +254,10 @@ _dl_map_object_deps (struct link_map *map,
                else
                  dep = args.aux;
 
+               /* Skip those are not dlopened if we are dlopened.  */
+               if (map->l_type == lt_loaded && dep->l_type != lt_loaded)
+                 continue;
+
                if (! dep->l_reserved)
                  {
                    /* Allocate new entry.  */
index 773f73d..6f14aaf 100644 (file)
@@ -158,7 +158,7 @@ add_dependency (struct link_map *undef_map, struct link_map *map)
         referenced object and don't record the dependencies.  This
         means this increment can never be reverted and the object
         will never be unloaded.  This is semantically the correct
-        behaviour.  */
+        behavior.  */
       if (__builtin_expect (act < undef_map->l_reldepsmax, 1))
        undef_map->l_reldeps[undef_map->l_reldepsact++] = map;