test_driver: Don't access @vm after it was set to NULL

If something goes wrong in testDomainGetDiskErrors() then we try
to free any strings that were previously allocated in return
array. Problem is, in my review of original patch (89320788ac)
I've mistakenly did some changes which result in possible NULL
dereference (@vm is set to NULL as the first thing under cleanup
label).

Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Andrea Bolognani <abologna@redhat.com>
This commit is contained in:
Michal Privoznik 2019-05-14 17:05:45 +02:00
parent 50dfabbb59
commit 3b1a5dde79

View File

@ -3268,7 +3268,7 @@ static int testDomainGetDiskErrors(virDomainPtr dom,
virCheckFlags(0, -1);
if (!(vm = testDomObjFromDomain(dom)))
goto cleanup;
return -1;
if (virDomainObjCheckActive(vm) < 0)
goto cleanup;
@ -3285,11 +3285,11 @@ static int testDomainGetDiskErrors(virDomainPtr dom,
}
cleanup:
virDomainObjEndAPI(&vm);
if (ret < 0) {
for (i = 0; i < MIN(vm->def->ndisks, maxerrors); i++)
VIR_FREE(errors[i].disk);
}
virDomainObjEndAPI(&vm);
return ret;
}