mirror of
https://github.com/libvirt/libvirt.git
synced 2025-02-25 18:55:26 -06:00
nwfilter: Fix memory leak and error path
Found by Coverity. If virNWFilterHashTablePut, then the 3rd arg @val must be free'd since it would be leaked. This also fixes potential problem on the error path where the caller could assume the virNWFilterHashTablePut was successful when in fact it failed leading to other issues.
This commit is contained in:
@@ -525,9 +525,12 @@ virNWFilterDetermineMissingVarsRec(virNWFilterDefPtr filter,
|
||||
}
|
||||
|
||||
varAccess = virBufferContentAndReset(&buf);
|
||||
virNWFilterHashTablePut(missing_vars, varAccess,
|
||||
val);
|
||||
rc = virNWFilterHashTablePut(missing_vars, varAccess, val);
|
||||
VIR_FREE(varAccess);
|
||||
if (rc < 0) {
|
||||
virNWFilterVarValueFree(val);
|
||||
return -1;
|
||||
}
|
||||
}
|
||||
}
|
||||
} else if (inc) {
|
||||
|
||||
Reference in New Issue
Block a user