From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from eggs.gnu.org ([2001:4830:134:3::10]:50542) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XaVsz-0005I0-0M for qemu-devel@nongnu.org; Sat, 04 Oct 2014 16:25:05 -0400 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1XaVsu-0004IV-3T for qemu-devel@nongnu.org; Sat, 04 Oct 2014 16:25:00 -0400 Received: from mx1.redhat.com ([209.132.183.28]:14495) by eggs.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1XaVst-0004IR-SN for qemu-devel@nongnu.org; Sat, 04 Oct 2014 16:24:56 -0400 From: Stefan Hajnoczi Date: Sat, 4 Oct 2014 21:24:27 +0100 Message-Id: <1412454289-1789-2-git-send-email-stefanha@redhat.com> In-Reply-To: <1412454289-1789-1-git-send-email-stefanha@redhat.com> References: <1412454289-1789-1-git-send-email-stefanha@redhat.com> Subject: [Qemu-devel] [PULL 01/23] snapshot: fix referencing wrong variable in while loop in do_delvm List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , To: qemu-devel@nongnu.org Cc: Peter Maydell From: Zhang Haoyu The while loop variabal is "bs1", but "bs" is always passed to bdrv_snapshot_delete_by_id_or_name. Broken in commit a89d89d, v1.7.0. Signed-off-by: Zhang Haoyu Reviewed-by: Markus Armbruster Signed-off-by: Stefan Hajnoczi --- savevm.c | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/savevm.c b/savevm.c index e19ae0a..2d8eb96 100644 --- a/savevm.c +++ b/savevm.c @@ -1245,19 +1245,18 @@ int load_vmstate(const char *name) void do_delvm(Monitor *mon, const QDict *qdict) { - BlockDriverState *bs, *bs1; + BlockDriverState *bs; Error *err = NULL; const char *name = qdict_get_str(qdict, "name"); - bs = find_vmstate_bs(); - if (!bs) { + if (!find_vmstate_bs()) { monitor_printf(mon, "No block device supports snapshots\n"); return; } - bs1 = NULL; - while ((bs1 = bdrv_next(bs1))) { - if (bdrv_can_snapshot(bs1)) { + bs = NULL; + while ((bs = bdrv_next(bs))) { + if (bdrv_can_snapshot(bs)) { bdrv_snapshot_delete_by_id_or_name(bs, name, &err); if (err) { monitor_printf(mon, -- 1.9.3