mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-28 00:21:52 +03:00
Update.
* malloc/memusage.c (me): Always use dlsym() to find the real implementations.
This commit is contained in:
@ -181,6 +181,13 @@ me (void)
|
||||
const char *env = getenv ("MEMUSAGE_PROG_NAME");
|
||||
size_t prog_len = strlen (__progname);
|
||||
|
||||
initialized = -1;
|
||||
mallocp = (void *(*) (size_t)) dlsym (RTLD_NEXT, "malloc");
|
||||
reallocp = (void *(*) (void *, size_t)) dlsym (RTLD_NEXT, "realloc");
|
||||
callocp = (void *(*) (size_t, size_t)) dlsym (RTLD_NEXT, "calloc");
|
||||
freep = (void (*) (void *)) dlsym (RTLD_NEXT, "free");
|
||||
initialized = 1;
|
||||
|
||||
if (env != NULL)
|
||||
{
|
||||
/* Check for program name. */
|
||||
@ -198,13 +205,6 @@ me (void)
|
||||
if (!start_sp)
|
||||
start_sp = GETSP ();
|
||||
|
||||
initialized = -1;
|
||||
mallocp = (void *(*) (size_t)) dlsym (RTLD_NEXT, "malloc");
|
||||
reallocp = (void *(*) (void *, size_t)) dlsym (RTLD_NEXT, "realloc");
|
||||
callocp = (void *(*) (size_t, size_t)) dlsym (RTLD_NEXT, "calloc");
|
||||
freep = (void (*) (void *)) dlsym (RTLD_NEXT, "free");
|
||||
initialized = 1;
|
||||
|
||||
outname = getenv ("MEMUSAGE_OUTPUT");
|
||||
if (outname != NULL && outname[0] != '\0'
|
||||
&& (access (outname, R_OK | W_OK) == 0 || errno == ENOENT))
|
||||
|
Reference in New Issue
Block a user