about summary refs log tree commit diff
diff options
context:
space:
mode:
authorAndreas Schwab <schwab@redhat.com>2011-03-21 15:00:21 +0100
committerAndreas Schwab <schwab@redhat.com>2011-08-22 10:58:42 +0200
commitf55ffe58e9754e54f2de20c67613e8a26a9878df (patch)
treeee6dc5cc94738c0ba0695c635bc1e97113902165
parent87162f462e8189943ee723b9bcff71269df2310d (diff)
downloadglibc-f55ffe58e9754e54f2de20c67613e8a26a9878df.tar.gz
glibc-f55ffe58e9754e54f2de20c67613e8a26a9878df.tar.xz
glibc-f55ffe58e9754e54f2de20c67613e8a26a9878df.zip
Revert "Don't crash when dependencies are missing"
This reverts commit f2092faf2b6bd491a1891d5d5e393a8bf85d01d7.
-rw-r--r--ChangeLog3
-rw-r--r--elf/dl-deps.c8
2 files changed, 7 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index 4c9fea3ef3..1cfaf54a69 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,8 @@
 2011-08-22  Andreas Schwab  <schwab@redhat.com>
 
+	* elf/dl-deps.c (_dl_map_object_deps): Move check for missing
+	dependencies back to end of function.
+
 	* dlfcn/Makefile (LDLIBS-bug-atexit3-lib.so): Readd
 	$(elfobjdir)/ld.so.
 
diff --git a/elf/dl-deps.c b/elf/dl-deps.c
index 0b03b903fe..37948af03b 100644
--- a/elf/dl-deps.c
+++ b/elf/dl-deps.c
@@ -491,10 +491,6 @@ _dl_map_object_deps (struct link_map *map,
   if (errno == 0 && errno_saved != 0)
     __set_errno (errno_saved);
 
-  if (errno_reason)
-    _dl_signal_error (errno_reason == -1 ? 0 : errno_reason, objname,
-		      NULL, errstring);
-
   struct link_map **old_l_initfini = NULL;
   if (map->l_initfini != NULL && map->l_type == lt_loaded)
     {
@@ -690,4 +686,8 @@ Filters not supported with LD_TRACE_PRELINKING"));
     }
   if (old_l_initfini != NULL)
       map->l_orig_initfini = old_l_initfini;
+
+  if (errno_reason)
+    _dl_signal_error (errno_reason == -1 ? 0 : errno_reason, objname,
+		      NULL, errstring);
 }