On 06/14/2018 10:39 AM, Andrea Bolognani wrote: > On Wed, 2018-06-13 at 15:58 +0200, Michal Privoznik wrote: >> When testing a domain XML with TPM we overwrite UNIX socket path >> to mimic what qemuTPMEmulatorPrepareHost() is doing (because >> *PrepareHost() functions are not called from the test). But we >> are not doing it fully - we need to set the chardev's type too so >> that virDomainTPMDefFree() can free the path. >> >> Signed-off-by: Michal Privoznik <mprivozn@xxxxxxxxxx> >> --- >> tests/qemuxml2argvtest.c | 2 ++ >> 1 file changed, 2 insertions(+) >> >> diff --git a/tests/qemuxml2argvtest.c b/tests/qemuxml2argvtest.c >> index f630185de1..daa8d4ceeb 100644 >> --- a/tests/qemuxml2argvtest.c >> +++ b/tests/qemuxml2argvtest.c >> @@ -551,9 +551,11 @@ testCompareXMLToArgv(const void *data) >> if (vm->def->tpm) { >> switch (vm->def->tpm->type) { >> case VIR_DOMAIN_TPM_TYPE_EMULATOR: >> + VIR_FREE(vm->def->tpm->data.emulator.source.data.file.path); >> if (VIR_STRDUP(vm->def->tpm->data.emulator.source.data.file.path, >> "/dev/test") < 0) >> goto cleanup; >> + vm->def->tpm->data.emulator.source.type = VIR_DOMAIN_CHR_TYPE_UNIX; > > Looking at virDomainChrSourceDefClear(), called by > virDomainTPMDefFree(), when type is CHR_TYPE_UNIX data.nix.path > will be VIR_FREE()d, so I think you want to set type to > CHR_TYPE_FILE instead. > Ah, good point. Do you trust me enough that I can fix this before pushing or do you want to see v2? ;-) Michal -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list