diff --git a/src/qemu/qemu_checkpoint.c b/src/qemu/qemu_checkpoint.c index 2fa5c1ae00c8b0ad63ea3d81c84d923926dddf27..d13d4c2a37a72850806992a7a5be4fc128f8521d 100644 --- a/src/qemu/qemu_checkpoint.c +++ b/src/qemu/qemu_checkpoint.c @@ -117,6 +117,7 @@ qemuCheckpointDiscard(virQEMUDriverPtr driver, size_t i, j; g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver); g_autofree char *chkFile = NULL; + bool chkcurrent = chk == virDomainCheckpointGetCurrent(vm->checkpoints); if (!metadata_only && !virDomainObjIsActive(vm)) { virReportError(VIR_ERR_OPERATION_UNSUPPORTED, "%s", @@ -172,7 +173,7 @@ qemuCheckpointDiscard(virQEMUDriverPtr driver, if (qemuMonitorTransactionBitmapMergeSourceAddBitmap(arr, node, disk->bitmap) < 0) return -1; - if (chk == virDomainCheckpointGetCurrent(vm->checkpoints)) { + if (chkcurrent) { if (qemuMonitorTransactionBitmapEnable(actions, node, disk2->bitmap) < 0) return -1; } @@ -192,7 +193,7 @@ qemuCheckpointDiscard(virQEMUDriverPtr driver, return -1; } - if (chk == virDomainCheckpointGetCurrent(vm->checkpoints)) { + if (chkcurrent) { virDomainCheckpointSetCurrent(vm->checkpoints, NULL); if (update_parent && parent) { virDomainCheckpointSetCurrent(vm->checkpoints, parent);