diff options
author | Zhang Haoyu <zhanghy@sangfor.com> | 2014-09-29 16:38:02 +0800 |
---|---|---|
committer | Stefan Hajnoczi <stefanha@redhat.com> | 2014-10-03 10:30:33 +0100 |
commit | af957387547b05ed6dc4d84c10cca42700a7aeda (patch) | |
tree | e27a450090afe4b3a4e034a094dfaf4ec957afd4 | |
parent | b00a0ddb31a393b8386d30a9bef4d9bbb249e7ec (diff) | |
download | qemu-af957387547b05ed6dc4d84c10cca42700a7aeda.zip qemu-af957387547b05ed6dc4d84c10cca42700a7aeda.tar.gz qemu-af957387547b05ed6dc4d84c10cca42700a7aeda.tar.bz2 |
snapshot: fix referencing wrong variable in while loop in do_delvm
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 <zhanghy@sangfor.com>
Reviewed-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
-rw-r--r-- | savevm.c | 11 |
1 files changed, 5 insertions, 6 deletions
@@ -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, |