On 04/23/2013 08:08 AM, Ján Tomko wrote: > https://bugzilla.redhat.com/show_bug.cgi?id=949373 > > Print the whole incorrect argument as specified by the user > instead of the short option. > > case 'd': > if (virStrToLong_i(optarg, NULL, 10, &debug) < 0) { > - vshError(ctl, "%s", _("option -d takes a numeric argument")); > + vshError(ctl, _("option %s takes a numeric argument"), argv[optind - 2]); I'm not sure this gives the nicest output. With short option bundling, this results in $ tools/virsh -rd error: option '-rd' requires an argument even though the -r option was just fine, and it is really just the bundled '-d' option that has a problem. Also, I wonder if we should be using a non-NULL 5th parameter to getopt_long; if you provide a longindex parameter, then you can provide a nicer error message that mentions the full "--debug" name (rather than the user-typed abbreviation '--debu') by indexing back into the long-option table (of course, do this only when it was a long option that was misused). It's a strict improvement over what we currently have, but I'm wondering if we should try for a v2 that does even better. -- Eric Blake eblake redhat com +1-919-301-3266 Libvirt virtualization library http://libvirt.org
Attachment:
signature.asc
Description: OpenPGP digital signature
-- libvir-list mailing list libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list