1
0
mirror of https://gitlab.com/libvirt/libvirt.git synced 2025-03-20 07:59:00 +00:00

qemu_snapshot: create: virDomainSnapshotGetCurrent is not used with redefine

Move it to code path for creating new snapshot.

Signed-off-by: Pavel Hrdina <phrdina@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Pavel Hrdina 2021-11-25 15:59:42 +01:00
parent fe52bc2638
commit 5bd0c09570

View File

@ -1702,7 +1702,6 @@ qemuSnapshotCreateXML(virDomainPtr domain,
virQEMUDriver *driver = domain->conn->privateData;
virDomainMomentObj *snap = NULL;
virDomainSnapshotPtr snapshot = NULL;
virDomainMomentObj *current = NULL;
bool update_current = true;
bool redefine = flags & VIR_DOMAIN_SNAPSHOT_CREATE_REDEFINE;
g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver);
@ -1766,6 +1765,8 @@ qemuSnapshotCreateXML(virDomainPtr domain,
goto endjob;
}
} else {
virDomainMomentObj *current = NULL;
if (qemuSnapshotCreateAlignDisks(vm, def, driver, flags) < 0)
goto endjob;
@ -1776,12 +1777,11 @@ qemuSnapshotCreateXML(virDomainPtr domain,
goto endjob;
def = NULL;
}
current = virDomainSnapshotGetCurrent(vm->snapshots);
if (current) {
if (!redefine)
current = virDomainSnapshotGetCurrent(vm->snapshots);
if (current) {
snap->def->parent_name = g_strdup(current->def->name);
}
}
/* actually do the snapshot */