From mboxrd@z Thu Jan 1 00:00:00 1970 From: Nolan Subject: [PATCH] Fix minor memory leak Date: Wed, 22 Apr 2009 15:15:14 -0700 Message-ID: <1240438514.18771.36.camel@voxel> Mime-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit To: kvm Return-path: Received: from phong.sigbus.net ([65.49.35.42]:48046 "EHLO phong.sigbus.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752306AbZDVWYK (ORCPT ); Wed, 22 Apr 2009 18:24:10 -0400 Received: from localhost (c-71-202-202-194.hsd1.ca.comcast.net [71.202.202.194]) by phong.sigbus.net (Postfix) with ESMTPSA id C334A95C0D9 for ; Wed, 22 Apr 2009 15:15:15 -0700 (PDT) Sender: kvm-owner@vger.kernel.org List-ID: Fix a memory leak. No big deal, since it happens only a bounded # of times at startup (as far as I can tell) but it makes valgrind complain. I sent this here since qemu doesn't have the code in question (it allocates buf on the stack, and thus guess_disk_lchs() usually won't work with O_DIRECT). Signed-off-by: Nolan Leake nolan sigbus.net diff --git a/qemu/block.c b/qemu/block.c index 7a469ed..3cdebcd 100644 --- a/qemu/block.c +++ b/qemu/block.c @@ -771,8 +771,10 @@ static int guess_disk_lchs(BlockDriverState *bs, bdrv_get_geometry(bs, &nb_sectors); ret = bdrv_read(bs, 0, buf, 1); - if (ret < 0) + if (ret < 0) { + qemu_free(buf); return -1; + } /* test msdos magic */ if (buf[510] != 0x55 || buf[511] != 0xaa) { qemu_free(buf);