qemuxml2argvtest: Fix type for faked chardev backing a TPM

The test filled the chardev type to VIR_DOMAIN_CHR_TYPE_FILE and thus
set the 'data.emulator.source->data.file.path' pointer, but the
commandline formatter is unconditionally expecting VIR_DOMAIN_CHR_TYPE_UNIX
and thus reading 'data.emulator.source->data.nix.path'. Since it's an
union it happened to land in the correct place. Fix the faked data.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2021-11-15 16:52:52 +01:00
parent 42b0000699
commit 2cb53c61cf

View File

@ -450,9 +450,9 @@ testCompareXMLToArgvCreateArgs(virQEMUDriver *drv,
if (vm->def->tpms[i]->type != VIR_DOMAIN_TPM_TYPE_EMULATOR)
continue;
VIR_FREE(vm->def->tpms[i]->data.emulator.source->data.file.path);
vm->def->tpms[i]->data.emulator.source->data.file.path = g_strdup("/dev/test");
vm->def->tpms[i]->data.emulator.source->type = VIR_DOMAIN_CHR_TYPE_FILE;
VIR_FREE(vm->def->tpms[i]->data.emulator.source->data.nix.path);
vm->def->tpms[i]->data.emulator.source->type = VIR_DOMAIN_CHR_TYPE_UNIX;
vm->def->tpms[i]->data.emulator.source->data.nix.path = g_strdup("/dev/test");
}
for (i = 0; i < vm->def->nvideos; i++) {