Another ldelf_before_allocation leak

This fixes an even more obvious leak.

	* ldelf.c (ldelf_before_allocation): Free copied elf_dt_audit.
	Simplify loop.
This commit is contained in:
Alan Modra
2025-01-22 07:39:53 +10:30
parent 63488ec7b8
commit a62e0f8597

View File

@@ -1821,24 +1821,22 @@ ldelf_before_allocation (char **audit, char **depaudit,
a dep audit entry. */
if (audit_libs && *audit_libs != '\0')
{
char *cp = xstrdup (audit_libs);
char *copy_audit_libs = xstrdup (audit_libs);
char *cp = copy_audit_libs;
do
{
int more = 0;
char *cp2 = strchr (cp, config.rpath_separator);
if (cp2)
{
*cp2 = '\0';
more = 1;
}
*cp2++ = '\0';
if (cp != NULL && *cp != '\0')
if (*cp != '\0')
ldelf_append_to_separated_string (depaudit, cp);
cp = more ? ++cp2 : NULL;
cp = cp2;
}
while (cp != NULL);
free (copy_audit_libs);
}
}