Use automatic freeing for 'mcs' and adjust the code.
Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
{
virSecuritySELinuxData *data = virSecurityManagerGetPrivateData(mgr);
int catRange;
- char *mcs = NULL;
/* +1 since virRandomInt range is exclusive of the upper bound */
catRange = (catMax - catMin) + 1;
for (;;) {
int c1 = virRandomInt(catRange);
int c2 = virRandomInt(catRange);
+ g_autofree char *mcs = NULL;
VIR_DEBUG("Try cat %s:c%d,c%d", sens, c1 + catMin, c2 + catMin);
}
if (virHashLookup(data->mcs, mcs) == NULL)
- break;
-
- VIR_FREE(mcs);
+ return g_steal_pointer(&mcs);
}
- return mcs;
+ return NULL;
}