[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH 2/2] qcow2-snapshot: Fixing bug of creating snapsh
From: |
Julio Faracco |
Subject: |
[Qemu-trivial] [PATCH 2/2] qcow2-snapshot: Fixing bug of creating snapshots with the same name. |
Date: |
Thu, 22 Jan 2015 23:53:41 -0200 |
This commit fixes the bug #1396497. You can create multiple snapshots with
the same name using 'qemu-img'. When you want to delete someone passing the
name, it will remove the first occurence of the snapshot with that name.
This commit fixes it.
Before:
$ qemu-img snapshot -c foo debian.qcow2
$ qemu-img snapshot -c foo debian.qcow2
$ qemu-img snapshot -c foo debian.qcow2
$ qemu-img snapshot -l debian.qcow2
ID TAG VM SIZE DATE VM CLOCK
1 foo 220M 2015-01-21 16:22:41 00:02:50.862
2 foo 130M 2015-01-22 11:14:55 00:00:40.132
3 foo 65M 2015-01-22 11:16:32 00:01:13.414
Now:
$ qemu-img snapshot -c foo debian.qcow2
$ qemu-img snapshot -c foo debian.qcow2
qemu-img: Could not create snapshot 'foo': -17 (File exists)
$ qemu-img snapshot -l debian.qcow2
ID TAG VM SIZE DATE VM CLOCK
1 foo 220M 2015-01-21 16:22:41 00:02:50.862
Signed-off-by: Julio Faracco <address@hidden>
---
block/qcow2-snapshot.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/block/qcow2-snapshot.c b/block/qcow2-snapshot.c
index c7d4cfe..873ac49 100644
--- a/block/qcow2-snapshot.c
+++ b/block/qcow2-snapshot.c
@@ -356,8 +356,9 @@ int qcow2_snapshot_create(BlockDriverState *bs,
QEMUSnapshotInfo *sn_info)
find_new_snapshot_id(bs, sn_info->id_str, sizeof(sn_info->id_str));
}
- /* Check that the ID is unique */
- if (find_snapshot_by_id_or_name(bs, sn_info->id_str) >= 0) {
+ /* Check that the ID and Name is unique */
+ if (find_snapshot_by_id_or_name(bs, sn_info->id_str) >= 0 ||
+ find_snapshot_by_id_or_name(bs, sn_info->name) >= 0 ) {
return -EEXIST;
}
--
1.9.1