diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index d3aa827acc..9891c5c087 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -27186,22 +27186,15 @@ virDomainHugepagesFormat(virBuffer *buf, virDomainHugePage *hugepages, size_t nhugepages) { + g_auto(virBuffer) childBuf = VIR_BUFFER_INIT_CHILD(buf); size_t i; - if (nhugepages == 1 && - hugepages[0].size == 0) { - virBufferAddLit(buf, "\n"); - return; + if (nhugepages != 1 || hugepages[0].size != 0) { + for (i = 0; i < nhugepages; i++) + virDomainHugepagesFormatBuf(&childBuf, &hugepages[i]); } - virBufferAddLit(buf, "\n"); - virBufferAdjustIndent(buf, 2); - - for (i = 0; i < nhugepages; i++) - virDomainHugepagesFormatBuf(buf, &hugepages[i]); - - virBufferAdjustIndent(buf, -2); - virBufferAddLit(buf, "\n"); + virXMLFormatElementEmpty(buf, "hugepages", NULL, &childBuf); }