[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

Re: [libvirt] [PATCH 3/8] virsh-host: Refactor cmdFreecell



On 03/21/13 04:48, Eric Blake wrote:
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.

I used it there to avoid the call to vshCommandOptInt in case it won't parse anything as the cellno parameter is missing anyways. It is not strictly needed but it's a optimization so I'll leave it in.


ACK if you either explain the added conjunct or remove it, and if you
fix the whitespace.


Peter


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]