mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2024-10-08 07:15:46 +00:00
conf: Fix resource leak in virCapabilitiesInitCaches
The @type from virFileReadValueString needs to be VIR_FREE each time through the loop since it's not saved and since cleanup can be reached prior to decoding it for @kernel_type amd bank->type, the cleanup code needs to also have a VIR_FREE Found by Coverity
This commit is contained in:
parent
53d3f8b224
commit
d6128618e4
@ -1611,10 +1611,10 @@ virCapabilitiesInitCaches(virCapsPtr caps)
|
|||||||
if (kernel_type < 0) {
|
if (kernel_type < 0) {
|
||||||
virReportError(VIR_ERR_INTERNAL_ERROR,
|
virReportError(VIR_ERR_INTERNAL_ERROR,
|
||||||
_("Unknown cache type '%s'"), type);
|
_("Unknown cache type '%s'"), type);
|
||||||
VIR_FREE(type);
|
|
||||||
goto cleanup;
|
goto cleanup;
|
||||||
}
|
}
|
||||||
bank->type = kernel_type;
|
bank->type = kernel_type;
|
||||||
|
VIR_FREE(type);
|
||||||
|
|
||||||
for (i = 0; i < caps->host.ncaches; i++) {
|
for (i = 0; i < caps->host.ncaches; i++) {
|
||||||
if (virCapsHostCacheBankEquals(bank, caps->host.caches[i]))
|
if (virCapsHostCacheBankEquals(bank, caps->host.caches[i]))
|
||||||
@ -1637,6 +1637,7 @@ virCapabilitiesInitCaches(virCapsPtr caps)
|
|||||||
|
|
||||||
ret = 0;
|
ret = 0;
|
||||||
cleanup:
|
cleanup:
|
||||||
|
VIR_FREE(type);
|
||||||
VIR_FREE(path);
|
VIR_FREE(path);
|
||||||
virDirClose(&dirp);
|
virDirClose(&dirp);
|
||||||
virCapsHostCacheBankFree(bank);
|
virCapsHostCacheBankFree(bank);
|
||||||
|
Loading…
Reference in New Issue
Block a user