From: Peter Krempa Date: Mon, 21 Jan 2013 16:54:17 +0000 (+0100) Subject: virsh-snapshot: Refactor cmdSnapshotDumpXML X-Git-Tag: v1.0.3-rc1~244 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=351f7a2f2cdf0848ee87cd9c43c7a75fc1de657e;p=thirdparty%2Flibvirt.git virsh-snapshot: Refactor cmdSnapshotDumpXML This patch simplifies error paths and switches to use vshCommandOptStringReq for argument retrieval in cmdSnapshotDumpXML --- diff --git a/tools/virsh-snapshot.c b/tools/virsh-snapshot.c index f76c40e342..c980b5b499 100644 --- a/tools/virsh-snapshot.c +++ b/tools/virsh-snapshot.c @@ -1775,31 +1775,26 @@ cmdSnapshotDumpXML(vshControl *ctl, const vshCmd *cmd) if (vshCommandOptBool(cmd, "security-info")) flags |= VIR_DOMAIN_XML_SECURE; - dom = vshCommandOptDomain(ctl, cmd, NULL); - if (dom == NULL) - goto cleanup; + if (vshCommandOptStringReq(ctl, cmd, "snapshotname", &name) < 0) + return false; - if (vshCommandOptString(cmd, "snapshotname", &name) <= 0) - goto cleanup; + if (!(dom = vshCommandOptDomain(ctl, cmd, NULL))) + return false; - snapshot = virDomainSnapshotLookupByName(dom, name, 0); - if (snapshot == NULL) + if (!(snapshot = virDomainSnapshotLookupByName(dom, name, 0))) goto cleanup; - xml = virDomainSnapshotGetXMLDesc(snapshot, flags); - if (!xml) + if (!(xml = virDomainSnapshotGetXMLDesc(snapshot, flags))) goto cleanup; vshPrint(ctl, "%s", xml); - ret = true; cleanup: VIR_FREE(xml); if (snapshot) virDomainSnapshotFree(snapshot); - if (dom) - virDomainFree(dom); + virDomainFree(dom); return ret; }