When a checkpoint is redefined without providing the domain XML, we might end up with a definition where the per-disk bitmap name is not set. Trying to delete such checkpoint would lead to a crash. Refuse such deletion. Resolves: https://bugzilla.redhat.com/show_bug.cgi?id=1941600 Signed-off-by: Peter Krempa <pkrempa@xxxxxxxxxx> --- src/qemu/qemu_checkpoint.c | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/src/qemu/qemu_checkpoint.c b/src/qemu/qemu_checkpoint.c index 689a556959..d2a621a52b 100644 --- a/src/qemu/qemu_checkpoint.c +++ b/src/qemu/qemu_checkpoint.c @@ -206,6 +206,13 @@ qemuCheckpointDiscardBitmaps(virDomainObjPtr vm, if (chkdisk->type != VIR_DOMAIN_CHECKPOINT_TYPE_BITMAP) continue; + if (!chkdisk->bitmap) { + virReportError(VIR_ERR_INVALID_ARG, + _("missing bitmap name for disk '%s' of checkpoint '%s'"), + chkdisk->name, chkdef->parent.name); + return -1; + } + if (qemuCheckpointDiscardDiskBitmaps(domdisk->src, blockNamedNodeData, chkdisk->bitmap, actions, domdisk->dst, -- 2.29.2