about summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--ChangeLog7
-rw-r--r--elf/dl-close.c2
-rw-r--r--elf/dl-load.c2
-rw-r--r--elf/rtld.c2
4 files changed, 11 insertions, 2 deletions
diff --git a/ChangeLog b/ChangeLog
index c637959f45..e71e752bfb 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2004-10-14  Jakub Jelinek  <jakub@redhat.com>
+
+	* elf/rtld.c (_dl_start): Fix one last dl_loaded.
+	* elf/dl-load.c (_dl_map_object_from_fd): Avoid definition of
+	label when it is not needed.
+	* elf/dl-close.c (_dl_close): Typo: & -> &&.
+
 2004-10-12  Jakub Jelinek  <jakub@redhat.com>
 
 	* sysdeps/generic/segfault.c: Include alloca.h and stdint.h.
diff --git a/elf/dl-close.c b/elf/dl-close.c
index 4f015fd6df..c823b17642 100644
--- a/elf/dl-close.c
+++ b/elf/dl-close.c
@@ -237,7 +237,7 @@ _dl_close (void *_map)
 				struct link_map *rl = depmap->l_initfini[k];
 
 				if (rl->l_idx < nopencount
-				    & list[rl->l_idx] == rl)
+				    && list[rl->l_idx] == rl)
 				  {
 				    assert (new_opencount[rl->l_idx] > 0);
 				    if (--new_opencount[rl->l_idx] ==  0)
diff --git a/elf/dl-load.c b/elf/dl-load.c
index 83d46f04ee..27f6e3f641 100644
--- a/elf/dl-load.c
+++ b/elf/dl-load.c
@@ -909,7 +909,9 @@ _dl_map_object_from_fd (const char *name, int fd, struct filebuf *fbp,
   l = _dl_new_object (realname, name, l_type, loader, mode, nsid);
   if (__builtin_expect (l == NULL, 0))
     {
+#ifdef SHARED
     fail_new:
+#endif
       errstring = N_("cannot create shared object descriptor");
       goto call_lose_errno;
     }
diff --git a/elf/rtld.c b/elf/rtld.c
index 3346abf6ce..06dd099cf5 100644
--- a/elf/rtld.c
+++ b/elf/rtld.c
@@ -537,7 +537,7 @@ _dl_start (void *arg)
 # define ELF_MACHINE_START_ADDRESS(map, start) (start)
 #endif
 
-    return ELF_MACHINE_START_ADDRESS (GL(dl_loaded), entry);
+    return ELF_MACHINE_START_ADDRESS (GL(dl_ns)[LM_ID_BASE]._ns_loaded, entry);
   }
 }