Use VIR_AUTO* for cleanup and virBufferCurrentContent instead of virBufferContentAndReset. Signed-off-by: Ján Tomko <jtomko@xxxxxxxxxx> --- tests/qemumonitortestutils.c | 32 +++++++++++--------------------- 1 file changed, 11 insertions(+), 21 deletions(-) diff --git a/tests/qemumonitortestutils.c b/tests/qemumonitortestutils.c index ca678e9bd5..6be4de8059 100644 --- a/tests/qemumonitortestutils.c +++ b/tests/qemumonitortestutils.c @@ -524,11 +524,10 @@ qemuMonitorTestProcessCommandDefaultValidate(qemuMonitorTestPtr test, const char *cmdname, virJSONValuePtr args) { - virBuffer debug = VIR_BUFFER_INITIALIZER; + VIR_AUTOCLEAN(virBuffer) debug = VIR_BUFFER_INITIALIZER; virJSONValuePtr schemaroot; - virJSONValuePtr emptyargs = NULL; - char *schemapath = NULL; - int ret = -1; + VIR_AUTOPTR(virJSONValue) emptyargs = NULL; + VIR_AUTOFREE(char *) schemapath = NULL; if (!test->qapischema) return 0; @@ -538,43 +537,34 @@ qemuMonitorTestProcessCommandDefaultValidate(qemuMonitorTestPtr test, return 0; if (virAsprintf(&schemapath, "%s/arg-type", cmdname) < 0) - goto cleanup; + return -1; if (virQEMUQAPISchemaPathGet(schemapath, test->qapischema, &schemaroot) < 0 || !schemaroot) { if (qemuMonitorReportError(test, "command '%s' not found in QAPI schema", cmdname) == 0) - ret = 1; - goto cleanup; + return 1; + return -1; } if (!args) { if (!(emptyargs = virJSONValueNewObject())) - goto cleanup; + return -1; args = emptyargs; } if (testQEMUSchemaValidate(args, schemaroot, test->qapischema, &debug) < 0) { - char *debugmsg = virBufferContentAndReset(&debug); if (qemuMonitorReportError(test, "failed to validate arguments of '%s' " "against QAPI schema: %s", - cmdname, debugmsg) == 0) - ret = 1; - - VIR_FREE(debugmsg); - goto cleanup; + cmdname, virBufferCurrentContent(&debug)) == 0) + return 1; + return -1; } - ret = 0; - - cleanup: - virBufferFreeAndReset(&debug); - virJSONValueFree(emptyargs); - VIR_FREE(schemapath); - return ret; + return 0; } -- 2.20.1 -- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list