mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
virDomainCheckpointRedefinePrep: Set 'current' checkpoint if there isn't any
When redefining checkpoints from scratch we'd not set the 'current' checkpoint if there wasn't any. This meant that the code wasn't ever able to set a 'current' checkpoint as any other one looks up if the parent of the redefined checkpoint is current. Since the backup code then requires the current checkpoint to start the lookup we'd not be able to perform a backup after restoring the checkpoint hierarchy. Reported-by: Eyal Shenitzky <eshenitz@redhat.com> Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Eric Blake <eblake@redhat.com>
This commit is contained in:
parent
135a0b3f71
commit
9428c4609c
@ -550,6 +550,10 @@ virDomainCheckpointRedefinePrep(virDomainObjPtr vm,
|
||||
*update_current = true;
|
||||
}
|
||||
|
||||
/* set the first redefined checkpoint as current */
|
||||
if (virDomainCheckpointGetCurrent(vm->checkpoints) == NULL)
|
||||
*update_current = true;
|
||||
|
||||
other = virDomainCheckpointFindByName(vm->checkpoints, def->parent.name);
|
||||
if (other) {
|
||||
otherdef = virDomainCheckpointObjGetDef(other);
|
||||
|
Loading…
x
Reference in New Issue
Block a user