[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH] vnc: fix memleak of the "vnc-worker-output" nam
From: |
Marc-André Lureau |
Subject: |
Re: [Qemu-devel] [PATCH] vnc: fix memleak of the "vnc-worker-output" name |
Date: |
Wed, 8 Aug 2018 00:53:27 +0200 |
Hi
On Wed, Aug 8, 2018 at 12:18 AM, Peter Wu <address@hidden> wrote:
> Fixes repeated memory leaks of 18 bytes when using VNC:
>
> Direct leak of 831024 byte(s) in 46168 object(s) allocated from:
> ...
> #4 0x7f6d2f919bdd in g_strdup_vprintf glib/gstrfuncs.c:514
> #5 0x56085cdcf660 in buffer_init util/buffer.c:59
> #6 0x56085ca6a7ec in vnc_async_encoding_start ui/vnc-jobs.c:177
> #7 0x56085ca6b815 in vnc_worker_thread_loop ui/vnc-jobs.c:240
>
> Fixes: 543b95801f98 ("vnc: attach names to buffers")
> Cc: Gerd Hoffmann <address@hidden>
> CC: address@hidden
> Signed-off-by: Peter Wu <address@hidden>
Reviewed-by: Marc-André Lureau <address@hidden>
> ---
> ui/vnc-jobs.c | 3 ++-
> 1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/ui/vnc-jobs.c b/ui/vnc-jobs.c
> index b0b15d42a8..929391f85d 100644
> --- a/ui/vnc-jobs.c
> +++ b/ui/vnc-jobs.c
> @@ -193,6 +193,7 @@ static void vnc_async_encoding_start(VncState *orig,
> VncState *local)
>
> static void vnc_async_encoding_end(VncState *orig, VncState *local)
> {
> + buffer_free(&local->output);
> orig->tight = local->tight;
> orig->zlib = local->zlib;
> orig->hextile = local->hextile;
> @@ -278,7 +279,7 @@ static int vnc_worker_thread_loop(VncJobQueue *queue)
> /* Copy persistent encoding data */
> vnc_async_encoding_end(job->vs, &vs);
>
> - qemu_bh_schedule(job->vs->bh);
> + qemu_bh_schedule(job->vs->bh);
just fixing a tab, not a big deal, but preferably not in the same patch
> } else {
> buffer_reset(&vs.output);
> /* Copy persistent encoding data */
> --
> 2.18.0
>
>
--
Marc-André Lureau