mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-01-09 06:25:19 +00:00
qemu_snapshot: refactor qemuSnapshotDelete
Move code around to make it clear what is called when deleting single snapshot or children snapshots. Signed-off-by: Pavel Hrdina <phrdina@redhat.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com>
This commit is contained in:
parent
a784d4076a
commit
06c2382ab9
@ -2350,7 +2350,15 @@ qemuSnapshotDelete(virDomainObj *vm,
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else if (snap->nchildren) {
|
|
||||||
|
if (flags & VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN_ONLY) {
|
||||||
|
virDomainMomentDropChildren(snap);
|
||||||
|
ret = 0;
|
||||||
|
} else {
|
||||||
|
ret = qemuDomainSnapshotDiscard(driver, vm, snap, true, metadata_only);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (snap->nchildren) {
|
||||||
rep.dir = cfg->snapshotDir;
|
rep.dir = cfg->snapshotDir;
|
||||||
rep.parent = snap->parent;
|
rep.parent = snap->parent;
|
||||||
rep.vm = vm;
|
rep.vm = vm;
|
||||||
@ -2364,11 +2372,6 @@ qemuSnapshotDelete(virDomainObj *vm,
|
|||||||
goto endjob;
|
goto endjob;
|
||||||
virDomainMomentMoveChildren(snap, snap->parent);
|
virDomainMomentMoveChildren(snap, snap->parent);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (flags & VIR_DOMAIN_SNAPSHOT_DELETE_CHILDREN_ONLY) {
|
|
||||||
virDomainMomentDropChildren(snap);
|
|
||||||
ret = 0;
|
|
||||||
} else {
|
|
||||||
ret = qemuDomainSnapshotDiscard(driver, vm, snap, true, metadata_only);
|
ret = qemuDomainSnapshotDiscard(driver, vm, snap, true, metadata_only);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user