diff --git a/src/qemu/qemu_command.c b/src/qemu/qemu_command.c index 83b277beeb..0ce5aa5906 100644 --- a/src/qemu/qemu_command.c +++ b/src/qemu/qemu_command.c @@ -10134,14 +10134,8 @@ qemuBuildSerialChrDeviceStr(char **deviceStr, serial->info.type == VIR_DOMAIN_DEVICE_ADDRESS_TYPE_SPAPRVIO) { virBufferAsprintf(&cmd, "spapr-vty,chardev=char%s", serial->info.alias); - if (qemuBuildDeviceAddressStr(&cmd, def, &serial->info, qemuCaps) < 0) - goto error; } } else { - virBufferAsprintf(&cmd, "%s,chardev=char%s,id=%s", - virDomainChrSerialTargetTypeToString(serial->targetType), - serial->info.alias, serial->info.alias); - switch (serial->targetType) { case VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_USB: if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_USB_SERIAL)) { @@ -10156,9 +10150,6 @@ qemuBuildSerialChrDeviceStr(char **deviceStr, _("usb-serial requires address of usb type")); goto error; } - - if (qemuBuildDeviceAddressStr(&cmd, def, &serial->info, qemuCaps) < 0) - goto error; break; case VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_ISA: @@ -10168,9 +10159,6 @@ qemuBuildSerialChrDeviceStr(char **deviceStr, _("isa-serial requires address of isa type")); goto error; } - - if (qemuBuildDeviceAddressStr(&cmd, def, &serial->info, qemuCaps) < 0) - goto error; break; case VIR_DOMAIN_CHR_SERIAL_TARGET_TYPE_PCI: @@ -10186,13 +10174,17 @@ qemuBuildSerialChrDeviceStr(char **deviceStr, _("pci-serial requires address of pci type")); goto error; } - - if (qemuBuildDeviceAddressStr(&cmd, def, &serial->info, qemuCaps) < 0) - goto error; break; } + + virBufferAsprintf(&cmd, "%s,chardev=char%s,id=%s", + virDomainChrSerialTargetTypeToString(serial->targetType), + serial->info.alias, serial->info.alias); } + if (qemuBuildDeviceAddressStr(&cmd, def, &serial->info, qemuCaps) < 0) + goto error; + if (virBufferCheckError(&cmd) < 0) goto error;