1
0
mirror of https://github.com/ipfs/kubo.git synced 2025-08-06 11:31:54 +08:00

commands/cli: Made Parse return an error if request has unrecognized options

This commit is contained in:
Matt Bell
2014-11-13 02:44:43 -08:00
committed by Juan Batiz-Benet
parent 120ead26f4
commit db361d9403
2 changed files with 9 additions and 1 deletions

View File

@ -71,7 +71,7 @@ func main() {
// BEFORE handling the parse error, if we have enough information // BEFORE handling the parse error, if we have enough information
// AND the user requested help, print it out and exit // AND the user requested help, print it out and exit
if invoc.cmd != nil { if invoc.req != nil {
longH, shortH, err := invoc.requestedHelp() longH, shortH, err := invoc.requestedHelp()
if err != nil { if err != nil {
printErr(err) printErr(err)

View File

@ -37,6 +37,14 @@ func Parse(input []string, root *cmds.Command) (cmds.Request, *cmds.Command, []s
return nil, cmd, path, err return nil, cmd, path, err
} }
// check to make sure there aren't any undefined options
for k := range opts {
if _, found := optDefs[k]; !found {
err = fmt.Errorf("Unrecognized option: -%s", k)
return nil, cmd, path, err
}
}
req := cmds.NewRequest(path, opts, args, cmd, optDefs) req := cmds.NewRequest(path, opts, args, cmd, optDefs)
err = cmd.CheckArguments(req) err = cmd.CheckArguments(req)