aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFlorian Weimer <fweimer@redhat.com>2024-08-08 13:35:03 +0200
committerFlorian Weimer <fweimer@redhat.com>2024-08-08 13:35:03 +0200
commit2d14f72c9abf188f4e25462b99024798b5acb5ec (patch)
treeb9f8f6fb41d5f68e90194060b8498bf95f317553
parentbd410d14e1babe00297d656572937b17c95da551 (diff)
downloadglibc-2d14f72c9abf188f4e25462b99024798b5acb5ec.zip
glibc-2d14f72c9abf188f4e25462b99024798b5acb5ec.tar.gz
glibc-2d14f72c9abf188f4e25462b99024798b5acb5ec.tar.bz2
elf: Remove struct dl_init_args from elf/dl-open.c
It is completely redundant with struct dl_open_args.
-rw-r--r--elf/dl-open.c26
1 files changed, 3 insertions, 23 deletions
diff --git a/elf/dl-open.c b/elf/dl-open.c
index 8556e7b..8b4704c 100644
--- a/elf/dl-open.c
+++ b/elf/dl-open.c
@@ -486,22 +486,11 @@ _dl_open_relocate_one_object (struct dl_open_args *args, struct r_debug *r,
_dl_relocate_object (l, l->l_scope, reloc_mode, 0);
}
-
-/* struct dl_init_args and call_dl_init are used to call _dl_init with
- exception handling disabled. */
-struct dl_init_args
-{
- struct link_map *new;
- int argc;
- char **argv;
- char **env;
-};
-
static void
call_dl_init (void *closure)
{
- struct dl_init_args *args = closure;
- _dl_init (args->new, args->argc, args->argv, args->env);
+ struct dl_open_args *args = closure;
+ _dl_init (args->map, args->argc, args->argv, args->env);
}
static void
@@ -793,16 +782,7 @@ dl_open_worker (void *a)
/* Run the initializer functions of new objects. Temporarily
disable the exception handler, so that lazy binding failures are
fatal. */
- {
- struct dl_init_args init_args =
- {
- .new = new,
- .argc = args->argc,
- .argv = args->argv,
- .env = args->env
- };
- _dl_catch_exception (NULL, call_dl_init, &init_args);
- }
+ _dl_catch_exception (NULL, call_dl_init, args);
/* Now we can make the new map available in the global scope. */
if (mode & RTLD_GLOBAL)