mirror of
https://sourceware.org/git/glibc.git
synced 2025-12-24 17:51:17 +03:00
Update.
* include/link.h: Include sysd-link.h. * sysdeps/generic/sysd-link.h: New file. * sysdeps/unix/sysv/linux/sysd-link.h: New file. * elf/Makefile (distribute): Add sysd-link.h. * elf/dl-load.c: Use definitions from sysd-link.h instead of stat types and functions directly. * elf/dl-misc.c: Likewise. * elf/dl-profile.c: Likewise. * elf/loadfail.c (main): Close all successfully loaded objects.
This commit is contained in:
@@ -175,7 +175,7 @@ _dl_start_profile (struct link_map *map, const char *output_dir)
|
||||
{
|
||||
char *filename;
|
||||
int fd;
|
||||
struct stat st;
|
||||
struct elf_stat st;
|
||||
const ElfW(Phdr) *ph;
|
||||
ElfW(Addr) mapstart = ~((ElfW(Addr)) 0);
|
||||
ElfW(Addr) mapend = 0;
|
||||
@@ -267,7 +267,7 @@ _dl_start_profile (struct link_map *map, const char *output_dir)
|
||||
return;
|
||||
}
|
||||
|
||||
if (fstat (fd, &st) < 0 || !S_ISREG (st.st_mode))
|
||||
if (elf_fxstat (_STAT_VER, fd, &st) < 0 || !S_ISREG (st.st_mode))
|
||||
{
|
||||
/* Not stat'able or not a regular file => don't use it. */
|
||||
char buf[400];
|
||||
|
||||
Reference in New Issue
Block a user