// parse global options
parsed_opts gopts = parse_options (_argc, _argv, global_options);
- if (gopts.count("_unknown"))
+ if (gopts.count("_unknown") || gopts.count("_missing_arg"))
{
setExitCode(ZYPPER_EXIT_ERR_SYNTAX);
return;
// parse command options
::copts = _copts = parse_options (argc(), argv(), specific_options);
- if (copts.count("_unknown"))
+ if (copts.count("_unknown") || gopts.count("_missing_arg"))
{
setExitCode(ZYPPER_EXIT_ERR_SYNTAX);
- ERR << "Unknown option, returning." << endl;
+ ERR << "Unknown option or missing argument, returning." << endl;
return;
}
cerr << "'" << endl;
- // tell the caller there have been uknown options encountered
+ // tell the caller there have been unknown options encountered
result["_unknown"].push_back("");
break;
case ':':
cerr << _("Missing argument for ") << argv[optind - 1] << endl;
+ result["_missing_arg"].push_back("");
break;
default:
const char *mapidx = optc? short2long[optc] : longopts[option_index].name;