From: Philippe Mathieu-Daudé Date: Thu, 27 Jul 2017 02:42:09 +0000 (-0300) Subject: nbd: fix memory leak in nbd_opt_go() X-Git-Tag: qemu-xen-4.10.0-rc1~57^2 X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=158b9aa568eabe614d37882dddc2eea534edc7ae;p=qemu-xen.git nbd: fix memory leak in nbd_opt_go() nbd/client.c:385:12: warning: Potential leak of memory pointed to by 'buf' Reported-by: Clang Static Analyzer Signed-off-by: Philippe Mathieu-Daudé Reviewed-by: Eric Blake Message-Id: <20170727024224.22900-5-f4bug@amsat.org> [introduced in commit 8ecaeae8] Signed-off-by: Eric Blake --- diff --git a/nbd/client.c b/nbd/client.c index 509ed5e4ba..0a17de80b5 100644 --- a/nbd/client.c +++ b/nbd/client.c @@ -376,9 +376,11 @@ static int nbd_opt_go(QIOChannel *ioc, const char *wantname, if (info->request_sizes) { stw_be_p(buf + 4 + len + 2, NBD_INFO_BLOCK_SIZE); } - if (nbd_send_option_request(ioc, NBD_OPT_GO, - 4 + len + 2 + 2 * info->request_sizes, buf, - errp) < 0) { + error = nbd_send_option_request(ioc, NBD_OPT_GO, + 4 + len + 2 + 2 * info->request_sizes, + buf, errp); + g_free(buf); + if (error < 0) { return -1; }