about summary refs log tree commit diff
diff options
context:
space:
mode:
authorOndřej Bílka <neleai@seznam.cz>2014-05-27 16:56:11 +0200
committerOndřej Bílka <neleai@seznam.cz>2014-05-27 16:56:39 +0200
commit3dfb9a5cbee3232cb38237f65759b6f230e790c0 (patch)
tree62a1c553d65d2b8cbf3aacf318db870fcc742825
parent774f928582fcfefb726f115772c001043aefa01c (diff)
downloadglibc-3dfb9a5cbee3232cb38237f65759b6f230e790c0.tar.gz
glibc-3dfb9a5cbee3232cb38237f65759b6f230e790c0.tar.xz
glibc-3dfb9a5cbee3232cb38237f65759b6f230e790c0.zip
Remove duplicate code in elf/dl-deps.c.
-rw-r--r--ChangeLog4
-rw-r--r--elf/dl-deps.c50
2 files changed, 23 insertions, 31 deletions
diff --git a/ChangeLog b/ChangeLog
index 9d1ae9c700..3ddd69b2a0 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,7 @@
+2014-05-27  Ondřej Bílka  <neleai@seznam.cz>
+
+	* elf/dl-deps.c (_dl_map_object_deps): Remove duplicate code.
+
 2014-05-27  Andreas Schwab  <schwab@suse.de>
 
 	* csu/libc-tls.c (__libc_setup_tls): Remove second argument from
diff --git a/elf/dl-deps.c b/elf/dl-deps.c
index 9c83c81779..c3b0cfc908 100644
--- a/elf/dl-deps.c
+++ b/elf/dl-deps.c
@@ -302,22 +302,24 @@ _dl_map_object_deps (struct link_map *map,
 		/* Store the tag in the argument structure.  */
 		args.name = name;
 
-		if (d->d_tag == DT_AUXILIARY)
+		/* Say that we are about to load an auxiliary library.  */
+		if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_LIBS,
+				      0))
+		  _dl_debug_printf ("load auxiliary object=%s"
+				    " requested by file=%s\n",
+				    name,
+				    DSO_FILENAME (l->l_name));
+
+		/* We must be prepared that the addressed shared
+		   object is not available.  For filter objects the dependency
+		   must be available.  */
+		bool malloced;
+		int err = _dl_catch_error (&objname, &errstring, &malloced,
+					openaux, &args);
+
+		if (__glibc_unlikely (errstring != NULL))
 		  {
-		    /* Say that we are about to load an auxiliary library.  */
-		    if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_LIBS,
-					  0))
-		      _dl_debug_printf ("load auxiliary object=%s"
-					" requested by file=%s\n",
-					name,
-					DSO_FILENAME (l->l_name));
-
-		    /* We must be prepared that the addressed shared
-		       object is not available.  */
-		    bool malloced;
-		    (void) _dl_catch_error (&objname, &errstring, &malloced,
-					    openaux, &args);
-		    if (__glibc_unlikely (errstring != NULL))
+		    if (d->d_tag == DT_AUXILIARY)
 		      {
 			/* We are not interested in the error message.  */
 			assert (errstring != NULL);
@@ -327,23 +329,9 @@ _dl_map_object_deps (struct link_map *map,
 			/* Simply ignore this error and continue the work.  */
 			continue;
 		      }
-		  }
-		else
-		  {
-		    /* Say that we are about to load an auxiliary library.  */
-		    if (__builtin_expect (GLRO(dl_debug_mask) & DL_DEBUG_LIBS,
-					  0))
-		      _dl_debug_printf ("load filtered object=%s"
-					" requested by file=%s\n",
-					name,
-					DSO_FILENAME (l->l_name));
-
-		    /* For filter objects the dependency must be available.  */
-		    bool malloced;
-		    int err = _dl_catch_error (&objname, &errstring, &malloced,
-					       openaux, &args);
-		    if (__glibc_unlikely (errstring != NULL))
+		    else
 		      {
+
 			char *new_errstring = strdupa (errstring);
 			objname = strdupa (objname);
 			if (malloced)