From 2d14f72c9abf188f4e25462b99024798b5acb5ec Mon Sep 17 00:00:00 2001 From: Florian Weimer Date: Thu, 8 Aug 2024 13:35:03 +0200 Subject: [PATCH] elf: Remove struct dl_init_args from elf/dl-open.c It is completely redundant with struct dl_open_args. --- elf/dl-open.c | 26 +++----------------------- 1 file changed, 3 insertions(+), 23 deletions(-) diff --git a/elf/dl-open.c b/elf/dl-open.c index 8556e7bd2f..8b4704c09d 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)