virDomainHostdevDefFormatSubsysSCSI: Avoid ternary operator when formatting address

Split up formatting of the '<address>' element rather that trying to
optimize it with formatting string hacks.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
Peter Krempa 2020-07-14 19:26:42 +02:00
parent ccb27a08d5
commit 0c71413332

View File

@ -26134,11 +26134,13 @@ virDomainHostdevDefFormatSubsysSCSI(virBufferPtr buf,
} else {
virBufferAsprintf(&sourceChildBuf, "<adapter name='%s'/>\n",
scsihostsrc->adapter);
virBufferAsprintf(&sourceChildBuf,
"<address %sbus='%u' target='%u' unit='%llu'/>\n",
includeTypeInAddr ? "type='scsi' " : "",
scsihostsrc->bus, scsihostsrc->target,
scsihostsrc->unit);
virBufferAddLit(&sourceChildBuf, "<address");
if (includeTypeInAddr)
virBufferAddLit(&sourceChildBuf, " type='scsi'");
virBufferAsprintf(&sourceChildBuf, " bus='%u' target='%u' unit='%llu'",
scsihostsrc->bus, scsihostsrc->target, scsihostsrc->unit);
virBufferAddLit(&sourceChildBuf, "/>\n");
}
virXMLFormatElement(buf, "source", &sourceAttrBuf, &sourceChildBuf);