mirror of
git://sourceware.org/git/glibc.git
synced 2024-11-21 01:12:26 +08:00
Fill in real information in __dl_iterate_phdr
This commit is contained in:
parent
1e4bd093e6
commit
74718d13e4
@ -1,3 +1,8 @@
|
||||
2011-09-09 Ulrich Drepper <drepper@gmail.com>
|
||||
|
||||
* elf/dl-iteratephdr.c (hidden_proto): Fill in data from the real
|
||||
link map.
|
||||
|
||||
2011-08-17 Andreas Jaeger <aj@suse.de>
|
||||
|
||||
* elf/sprof.c (load_shobj): Remove unused variable log_hashfraction.
|
||||
|
@ -1,5 +1,5 @@
|
||||
/* Get loaded objects program headers.
|
||||
Copyright (C) 2001-2004, 2006-2009, 2010 Free Software Foundation, Inc.
|
||||
Copyright (C) 2001-2004, 2006-2009, 2010, 2011 Free Software Foundation, Inc.
|
||||
This file is part of the GNU C Library.
|
||||
Contributed by Jakub Jelinek <jakub@redhat.com>, 2001.
|
||||
|
||||
@ -62,16 +62,16 @@ __dl_iterate_phdr (int (*callback) (struct dl_phdr_info *info,
|
||||
|
||||
for (l = GL(dl_ns)[ns]._ns_loaded; l != NULL; l = l->l_next)
|
||||
{
|
||||
info.dlpi_addr = l->l_addr;
|
||||
info.dlpi_name = l->l_name;
|
||||
info.dlpi_phdr = l->l_phdr;
|
||||
info.dlpi_phnum = l->l_phnum;
|
||||
info.dlpi_addr = l->l_real->l_addr;
|
||||
info.dlpi_name = l->l_real->l_name;
|
||||
info.dlpi_phdr = l->l_real->l_phdr;
|
||||
info.dlpi_phnum = l->l_real->l_phnum;
|
||||
info.dlpi_adds = GL(dl_load_adds);
|
||||
info.dlpi_subs = GL(dl_load_adds) - nloaded;
|
||||
info.dlpi_tls_data = NULL;
|
||||
info.dlpi_tls_modid = l->l_tls_modid;
|
||||
info.dlpi_tls_modid = l->l_real->l_tls_modid;
|
||||
if (info.dlpi_tls_modid != 0)
|
||||
info.dlpi_tls_data = GLRO(dl_tls_get_addr_soft) (l);
|
||||
info.dlpi_tls_data = GLRO(dl_tls_get_addr_soft) (l->l_real);
|
||||
ret = callback (&info, sizeof (struct dl_phdr_info), data);
|
||||
if (ret)
|
||||
break;
|
||||
|
Loading…
Reference in New Issue
Block a user