From df3582197817353c70b2000421785eb1e795c006 Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Mon, 21 Sep 2020 18:51:56 +0200 Subject: [PATCH] virDomainSnapshotAlignDisks: Extract domain disk definition to a local variable MIME-Version: 1.0 Content-Type: text/plain; charset=utf8 Content-Transfer-Encoding: 8bit Extract the disk def to a local variable so that it's more obvious what's happening and it will also allow further simplification. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- src/conf/snapshot_conf.c | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/src/conf/snapshot_conf.c b/src/conf/snapshot_conf.c index a1cee01944..aeebe2fb33 100644 --- a/src/conf/snapshot_conf.c +++ b/src/conf/snapshot_conf.c @@ -677,6 +677,7 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr snapdef, for (i = 0; i < snapdef->ndisks; i++) { virDomainSnapshotDiskDefPtr snapdisk = &snapdef->disks[i]; int idx = virDomainDiskIndexByName(domdef, snapdisk->name, false); + virDomainDiskDefPtr domdisk = NULL; int disk_snapshot; if (idx < 0) { @@ -685,6 +686,8 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr snapdef, return -1; } + domdisk = domdef->disks[idx]; + if (virBitmapIsBitSet(map, idx)) { virReportError(VIR_ERR_CONFIG_UNSUPPORTED, _("disk '%s' specified twice"), @@ -694,7 +697,7 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr snapdef, ignore_value(virBitmapSetBit(map, idx)); snapdisk->idx = idx; - disk_snapshot = domdef->disks[idx]->snapshot; + disk_snapshot = domdisk->snapshot; if (!snapdisk->snapshot) { if (disk_snapshot && (!require_match || @@ -722,9 +725,9 @@ virDomainSnapshotAlignDisks(virDomainSnapshotDefPtr snapdef, snapdisk->src->path, snapdisk->name); return -1; } - if (STRNEQ(snapdisk->name, domdef->disks[idx]->dst)) { + if (STRNEQ(snapdisk->name, domdisk->dst)) { VIR_FREE(snapdisk->name); - snapdisk->name = g_strdup(domdef->disks[idx]->dst); + snapdisk->name = g_strdup(domdisk->dst); } } -- 2.47.2