commands: Fixed Request#CheckArguments not erroring when required arguments were missing
Matt Bell committed
Nov 3, 2014 at 00:09 UTC
586a019fbf5fcd383f514eabf9b5cd3670e62736
1 file changed
+13
-1
commands/request.go
+13
-1
@@ -107,7 +107,19 @@ var converters = map[reflect.Kind]converter{
107
func (r *request) CheckArguments(args []Argument) error {
108
var argDef Argument
109
110
- for i, arg := range r.arguments {
110
+ var length int
111
+ if len(r.arguments) > len(args) {
112
+ length = len(r.arguments)
113
+ } else {
114
+ length = len(args)
115
+ }
116
+
117
+ for i := 0; i < length; i++ {
118
+ var arg interface{}
119
+ if len(r.arguments) > i {
120
+ arg = r.arguments[i]
121
+ }
122
+
123
if i < len(args) {
124
argDef = args[i]
125
} else if !argDef.Variadic {