From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([208.118.235.92]:54274) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvWa5-0006KP-FJ for qemu-devel@nongnu.org; Wed, 16 Jan 2013 12:15:18 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1TvWa0-0004Hm-Ga for qemu-devel@nongnu.org; Wed, 16 Jan 2013 12:15:17 -0500 Received: from oxygen.pond.sub.org ([2a01:4f8:121:10e4::3]:42118) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1TvWa0-0004GL-9b for qemu-devel@nongnu.org; Wed, 16 Jan 2013 12:15:12 -0500 From: Markus Armbruster Date: Wed, 16 Jan 2013 18:15:08 +0100 Message-Id: <1358356509-28742-2-git-send-email-armbru@redhat.com> In-Reply-To: <1358356509-28742-1-git-send-email-armbru@redhat.com> References: <1358356509-28742-1-git-send-email-armbru@redhat.com> Subject: [Qemu-devel] [PATCH 1/2] qemu-ga: Plug memory leak in guest_fsfreeze_cleanup() List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: mdroth@linux.vnet.ibm.com, lcapitulino@redhat.com Neglects to free errors allocated by qmp_guest_fsfreeze_thaw(). Spotted by Coverity. While there, drop the test whether return value is negative (it's never true), and improve logging. Signed-off-by: Markus Armbruster --- qga/commands-posix.c | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/qga/commands-posix.c b/qga/commands-posix.c index 77f6ee7..f95ebc8 100644 --- a/qga/commands-posix.c +++ b/qga/commands-posix.c @@ -611,13 +611,14 @@ int64_t qmp_guest_fsfreeze_thaw(Error **err) static void guest_fsfreeze_cleanup(void) { - int64_t ret; Error *err = NULL; if (ga_is_frozen(ga_state) == GUEST_FSFREEZE_STATUS_FROZEN) { - ret = qmp_guest_fsfreeze_thaw(&err); - if (ret < 0 || err) { - slog("failed to clean up frozen filesystems"); + qmp_guest_fsfreeze_thaw(&err); + if (err) { + slog("failed to clean up frozen filesystems: %s", + error_get_pretty(err)); + error_free(err); } } } -- 1.7.11.7