Subject: Re: bug#19578: Memory leaks in coreutils/lib/locale_charset.c

From: Daiki Ueno <[email-masked]>
Date: Tue, 13 Jan 2015 18:35:05 +0900

Zhaopeng Li <[email-masked]> writes:

> At line 534 of coreutils/lib/locale_charset.c, var ‘aliases' points
> to a buffer which is allocated using malloc() .

> This buffer is not freed when codeset is still an empty string after
> the loop (Line 534~542).
>
> So it will be leaked under such situation.

> Line 533    /* Resolve alias. */
> Line 534   for (aliases = get_charset_aliases ();

I got the same error from clang-analyzer, but I think the leak is
intentional and harmless.  The return value of get_charset_aliases is
saved in a global variable charset_aliases and won't be allocated twice.

Regards,
--
Daiki Ueno