In virDomainIOThreadIDDefArrayInit() the variable @iothrid is
used only inside a loop but is declared for whole function. Bring
the variable into the loop so that it's obvious that the variable
is not used elsewhere.
Signed-off-by: Michal Privoznik <mprivozn(a)redhat.com>
Reviewed-by: Peter Krempa <pkrempa(a)redhat.com>
---
src/conf/domain_conf.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c
index cc1f765ca9..22b58e3212 100644
--- a/src/conf/domain_conf.c
+++ b/src/conf/domain_conf.c
@@ -3509,7 +3509,6 @@ virDomainIOThreadIDDefArrayInit(virDomainDef *def,
{
size_t i;
ssize_t nxt = -1;
- virDomainIOThreadIDDef *iothrid = NULL;
g_autoptr(virBitmap) thrmap = NULL;
/* Same value (either 0 or some number), then we have none to fill in or
@@ -3534,6 +3533,8 @@ virDomainIOThreadIDDefArrayInit(virDomainDef *def,
/* Populate iothreadids[] using the set bit number from thrmap */
while (def->niothreadids < iothreads) {
+ g_autoptr(virDomainIOThreadIDDef) iothrid = NULL;
+
if ((nxt = virBitmapNextSetBit(thrmap, nxt)) < 0) {
virReportError(VIR_ERR_INTERNAL_ERROR, "%s",
_("failed to populate iothreadids"));
@@ -3542,7 +3543,7 @@ virDomainIOThreadIDDefArrayInit(virDomainDef *def,
iothrid = g_new0(virDomainIOThreadIDDef, 1);
iothrid->iothread_id = nxt;
iothrid->autofill = true;
- def->iothreadids[def->niothreadids++] = iothrid;
+ def->iothreadids[def->niothreadids++] = g_steal_pointer(&iothrid);
}
return 0;
--
2.35.1