(_dl_map_object): Remove incorrect optimization for SHARED code.
authordrepper <drepper>
Tue, 29 Jan 2002 04:35:27 +0000 (04:35 +0000)
committerdrepper <drepper>
Tue, 29 Jan 2002 04:35:27 +0000 (04:35 +0000)
elf/dl-load.c

index 4b9af50..b66e7fe 100644 (file)
@@ -1,5 +1,5 @@
 /* Map in a shared object's segments from the file.
-   Copyright (C) 1995,96,97,98,99,2000,2001 Free Software Foundation, Inc.
+   Copyright (C) 1995,96,97,98,99,2000,2001,2002 Free Software Foundation, Inc.
    This file is part of the GNU C Library.
 
    The GNU C Library is free software; you can redistribute it and/or
@@ -1748,14 +1748,8 @@ _dl_map_object (struct link_map *loader, const char *name, int preloaded,
 
       /* Finally, try the default path.  */
       if (fd == -1
-         && ((l = loader ?: _dl_loaded)
-             /* 'l' is always != NULL for dynamically linked objects.  */
-#ifdef SHARED
-             ,
-#else
-             == NULL ||
-#endif
-             __builtin_expect (!(l->l_flags_1 & DF_1_NODEFLIB), 1))
+         && ((l = loader ?: _dl_loaded) == NULL
+             || __builtin_expect (!(l->l_flags_1 & DF_1_NODEFLIB), 1))
          && rtld_search_dirs.dirs != (void *) -1)
        fd = open_path (name, namelen, preloaded, &rtld_search_dirs,
                        &realname, &fb);