From 4a08acd77e8b3ba003e44e871776044f1680fc2d Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Tue, 5 Mar 2019 10:17:31 +0100 Subject: [PATCH] conf: Refactor virDomainWatchdogDefFormat MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Use virXMLFormatElement to format the internals along with simplifying cleanup code paths. Signed-off-by: Peter Krempa Reviewed-by: Ján Tomko --- src/conf/domain_conf.c | 33 ++++++++------------------------- 1 file changed, 8 insertions(+), 25 deletions(-) diff --git a/src/conf/domain_conf.c b/src/conf/domain_conf.c index fd3f19d6ce..ed480bcf8e 100644 --- a/src/conf/domain_conf.c +++ b/src/conf/domain_conf.c @@ -25893,46 +25893,29 @@ virDomainWatchdogDefFormat(virBufferPtr buf, { const char *model = virDomainWatchdogModelTypeToString(def->model); const char *action = virDomainWatchdogActionTypeToString(def->action); - virBuffer childBuf = VIR_BUFFER_INITIALIZER; - int ret = -1; + VIR_AUTOCLEAN(virBuffer) attrBuf = VIR_BUFFER_INITIALIZER; + VIR_AUTOCLEAN(virBuffer) childBuf = VIR_BUFFER_INITIALIZER; virBufferSetChildIndent(&childBuf, buf); if (!model) { virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected watchdog model %d"), def->model); - goto cleanup; + return -1; } if (!action) { virReportError(VIR_ERR_INTERNAL_ERROR, _("unexpected watchdog action %d"), def->action); - goto cleanup; - } - - if (virDomainDeviceInfoFormat(&childBuf, &def->info, flags) < 0) - goto cleanup; - - if (virBufferCheckError(&childBuf) < 0) - goto cleanup; - - virBufferAsprintf(buf, "\n"); - virBufferAddBuffer(buf, &childBuf); - virBufferAddLit(buf, "\n"); - } else { - virBufferAddLit(buf, "/>\n"); + return -1; } - ret = 0; + virBufferAsprintf(&attrBuf, " model='%s' action='%s'", model, action); - cleanup: - virBufferFreeAndReset(&childBuf); + if (virDomainDeviceInfoFormat(&childBuf, &def->info, flags) < 0) + return -1; - return ret; + return virXMLFormatElement(buf, "watchdog", &attrBuf, &childBuf); } static int virDomainPanicDefFormat(virBufferPtr buf, -- GitLab