[libvirt] [PATCH 3/8] virsh-host: Refactor cmdFreecell
Eric Blake
eblake at redhat.com
Thu Mar 21 03:48:33 UTC 2013
On 03/07/2013 05:53 AM, Peter Krempa wrote:
> Use the new helpers to determine mutually exclusive options and touch up
> some parts to simplify the code.
> ---
> tools/virsh-host.c | 55 +++++++++++++++++++++++-------------------------------
> 1 file changed, 23 insertions(+), 32 deletions(-)
>
>
> - if ((cell_given = vshCommandOptInt(cmd, "cellno", &cell)) < 0) {
> - vshError(ctl, "%s", _("cell number has to be a number"));
> - goto cleanup;
> - }
> - all_given = vshCommandOptBool(cmd, "all");
> + VSH_EXCLUSIVE_OPTIONS_VAR(all, cellno);
>
> - if (all_given && cell_given) {
> - vshError(ctl, "%s", _("--cellno and --all are mutually exclusive. "
> - "Please choose only one."));
> - goto cleanup;
> + if (cellno && vshCommandOptInt(cmd, "cellno", &cell) < 0) {
The 'cellno &&' portion is extra; we didn't need it before, so I don't
know why you added it here. vshCommandOptInt returns 0 if --cellno was
not provided, since it is not a mandatory option.
> @@ -237,23 +231,20 @@ cmdFreecell(vshControl *ctl, const vshCmd *cmd)
> vshPrintExtra(ctl, "--------------------\n");
> vshPrintExtra(ctl, "%5s: %10llu KiB\n", _("Total"), memory/1024);
> } else {
> - if (!cell_given) {
> - memory = virNodeGetFreeMemory(ctl->conn);
> - if (memory == 0)
> + if (cellno) {
Indentation is off.
> + if (virNodeGetCellsFreeMemory(ctl->conn, &memory, cell, 1) != 1)
> goto cleanup;
> - } else {
> - ret = virNodeGetCellsFreeMemory(ctl->conn, &memory, cell, 1);
> - if (ret != 1)
> +
> + vshPrint(ctl, "%d: %llu KiB\n", cell, (memory/1024));
> + } else {
and again.
ACK if you either explain the added conjunct or remove it, and if you
fix the whitespace.
--
Eric Blake eblake redhat com +1-919-301-3266
Libvirt virtualization library http://libvirt.org
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 621 bytes
Desc: OpenPGP digital signature
URL: <http://listman.redhat.com/archives/libvir-list/attachments/20130320/218b915a/attachment-0001.sig>
More information about the libvir-list
mailing list