[Dnsmasq-discuss] [PATCH] free() after use
Geert Stappers
stappers at stappers.nl
Thu Jul 7 15:48:24 UTC 2022
On Wed, Jun 22, 2022 at 11:05:57AM +0200, Geert Stappers via Dnsmasq-discuss wrote:
> Because GCC 12.1 did report:
> cache.c: In function ‘cache_make_stat’:
> cache.c:1683:30: warning: pointer used after ‘free’ [-Wuse-after-free]
> 1683 | p = new + (p - buff);
> | ~~~^~~~~~~
> cache.c:1682:17: note: call to ‘free’ here
> 1682 | free(buff);
> | ^~~~~~~~~~
> ---
> src/cache.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/src/cache.c b/src/cache.c
> index a99d70d..e221afd 100644
> --- a/src/cache.c
> +++ b/src/cache.c
> @@ -1679,8 +1679,8 @@ int cache_make_stat(struct txt_record *t)
> if (!(new = whine_malloc(newlen)))
> return 0;
> memcpy(new, buff, bufflen);
> - free(buff);
> p = new + (p - buff);
> + free(buff);
> lenp = p - 1;
> buff = new;
> bufflen = newlen;
> --
> 2.11.0
>
That became https://lists.thekelleys.org.uk/pipermail/dnsmasq-discuss/2022q2/016450.html
and this a reminder on it.
Groeten
Geert Stappers
--
Silence is hard to parse
More information about the Dnsmasq-discuss
mailing list