summaryrefslogtreecommitdiff
path: root/libc/elf/rtld.c
diff options
context:
space:
mode:
authorjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-09-25 14:42:18 +0000
committerjoseph <joseph@7b3dc134-2b1b-0410-93df-9e9f96275f8d>2012-09-25 14:42:18 +0000
commitaeb5b827c5f7ed858a5b15101d1a3893356cc6ba (patch)
tree5d8e4382197847df3cf875caac4994390b6f1094 /libc/elf/rtld.c
parent598804b7d4191eddbaf24784c3b25a6c4d6f33cd (diff)
downloadeglibc2-aeb5b827c5f7ed858a5b15101d1a3893356cc6ba.tar.gz
Merge changes between r20391 and r20863 from /fsf/trunk.
git-svn-id: svn://svn.eglibc.org/trunk@20864 7b3dc134-2b1b-0410-93df-9e9f96275f8d
Diffstat (limited to 'libc/elf/rtld.c')
-rw-r--r--libc/elf/rtld.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libc/elf/rtld.c b/libc/elf/rtld.c
index f77bc7ce1..1ba35321b 100644
--- a/libc/elf/rtld.c
+++ b/libc/elf/rtld.c
@@ -1094,7 +1094,8 @@ of this helper program; chances are you did not intend to run this program.\n\
/* Now the map for the main executable is available. */
main_map = GL(dl_ns)[LM_ID_BASE]._ns_loaded;
- if (GL(dl_rtld_map).l_info[DT_SONAME] != NULL
+ if (__builtin_expect (mode, normal) == normal
+ && GL(dl_rtld_map).l_info[DT_SONAME] != NULL
&& main_map->l_info[DT_SONAME] != NULL
&& strcmp ((const char *) D_PTR (&GL(dl_rtld_map), l_info[DT_STRTAB])
+ GL(dl_rtld_map).l_info[DT_SONAME]->d_un.d_val,