mirror of
https://sourceware.org/git/glibc.git
synced 2025-07-28 00:21:52 +03:00
Realloc error handling memory leak fix.
This commit is contained in:
@ -121,11 +121,16 @@ _dl_new_object (char *realname, const char *libname, int type,
|
||||
origin = NULL;
|
||||
do
|
||||
{
|
||||
char *new_origin;
|
||||
|
||||
len += 128;
|
||||
origin = (char *) realloc (origin, len);
|
||||
new_origin = (char *) realloc (origin, len);
|
||||
if (new_origin == NULL)
|
||||
/* We exit the loop. Note that result == NULL. */
|
||||
break;
|
||||
origin = new_origin;
|
||||
}
|
||||
while (origin != NULL
|
||||
&& (result = __getcwd (origin, len - realname_len)) == NULL
|
||||
while ((result = __getcwd (origin, len - realname_len)) == NULL
|
||||
&& errno == ERANGE);
|
||||
|
||||
if (result == NULL)
|
||||
|
Reference in New Issue
Block a user