aboutsummaryrefslogtreecommitdiff
path: root/elf/dl-init.c
diff options
context:
space:
mode:
Diffstat (limited to 'elf/dl-init.c')
-rw-r--r--elf/dl-init.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/elf/dl-init.c b/elf/dl-init.c
index a328716bf3..74810feff1 100644
--- a/elf/dl-init.c
+++ b/elf/dl-init.c
@@ -26,6 +26,7 @@ typedef void (*init_t) (int, char **, char **);
/* Flag, nonzero during startup phase. */
extern int _dl_starting_up;
+extern int _dl_starting_up_internal attribute_hidden;
static void
@@ -52,7 +53,7 @@ call_init (struct link_map *l, int argc, char **argv, char **env)
/* Print a debug message if wanted. */
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
INTUSE(_dl_debug_printf) ("\ncalling init: %s\n\n",
- l->l_name[0] ? l->l_name : _dl_argv[0]);
+ l->l_name[0] ? l->l_name : rtld_progname);
/* Now run the local constructors. There are two forms of them:
- the one named by DT_INIT
@@ -108,7 +109,7 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
if (__builtin_expect (GL(dl_debug_mask) & DL_DEBUG_IMPCALLS, 0))
INTUSE(_dl_debug_printf) ("\ncalling preinit: %s\n\n",
main_map->l_name[0]
- ? main_map->l_name : _dl_argv[0]);
+ ? main_map->l_name : rtld_progname);
addrs = (ElfW(Addr) *) (main_map->l_info[DT_PREINIT_ARRAY]->d_un.d_ptr
+ main_map->l_addr);
@@ -142,6 +143,6 @@ _dl_init (struct link_map *main_map, int argc, char **argv, char **env)
INTUSE(_dl_debug_state) ();
/* Finished starting up. */
- _dl_starting_up = 0;
+ INTUSE(_dl_starting_up) = 0;
}
INTDEF (_dl_init)