mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-24 17:51:17 +03:00
Update.
2000-11-15 H.J. Lu <hjl@gnu.org> * sysdeps/generic/ldsodefs.h (DL_DT_INIT_ADDRESS): Defined if ELF_FUNCTION_PTR_IS_SPECIAL is not defined. (DL_DT_FINI_ADDRESS): Likewise. * sysdeps/ia64/dl-lookupcfg.h (_dl_lookup_address): Set the return type to ElfW(Addr). (_dl_function_address): New prototype. (DL_FUNCTION_ADDRESS): Defined. (DL_DT_INIT_ADDRESS): Defined as DL_FUNCTION_ADDRESS. (DL_DT_FINI_ADDRESS): Likewise. * sysdeps/ia64/Versions (GLIBC_2.2): Add _dl_function_address. * sysdeps/ia64/dl-machine.h (_dl_start_address): Removed. (ELF_MACHINE_START_ADDRESS): Changed to DL_FUNCTION_ADDRESS. * sysdeps/ia64/dl-symaddr.c (_dl_start_address): Renamed to ... (_dl_function_address): This. * elf/dl-fini.c (_dl_fini): Use DL_DT_FINI_ADDRESS to get the function pointer for DT_FINI. * elf/dl-close.c (_dl_close): Likewise. * elf/dl-init.c (_dl_init): Use DL_DT_INIT_ADDRESS to get the function pointer for DT_INIT. 2000-11-16 Jakub Jelinek <jakub@redhat.com> * sysdeps/generic/printf_fphex.c (__printf_fphex): Compute correctly end of wexpbuf buffer.
This commit is contained in:
@@ -152,8 +152,9 @@ _dl_close (void *_map)
|
||||
|
||||
/* Next try the old-style destructor. */
|
||||
if (imap->l_info[DT_FINI] != NULL)
|
||||
(*(void (*) (void)) ((void *) imap->l_addr
|
||||
+ imap->l_info[DT_FINI]->d_un.d_ptr)) ();
|
||||
(*(void (*) (void)) DL_DT_FINI_ADDRESS
|
||||
(imap, (void *) imap->l_addr
|
||||
+ imap->l_info[DT_FINI]->d_un.d_ptr)) ();
|
||||
}
|
||||
|
||||
/* Store the new l_opencount value. */
|
||||
|
||||
Reference in New Issue
Block a user