@cryptotaxi247 / kubo / commits / 942e96400

parse: fix parsing stdin args

License: MIT Signed-off-by: Christian Couder <chriscool@tuxfamily.org>

Christian Couder committed May 17, 2015 at 23:43 UTC 942e96400bfceba3ef7b4e57002c44d8a718ecbf
1 file changed +4 -4
commands/cli/parse.go
+4 -4
@@ -250,11 +250,11 @@ func parseArgs(inputs []string, stdin *os.File, argDefs []cmds.Argument, recursi
250
251 var err error
252 if argDef.Type == cmds.ArgString {
253 - if stdin == nil {
253 + if stdin == nil || !argDef.SupportsStdin {
254 // add string values
255 stringArgs, inputs = appendString(stringArgs, inputs)
256
257 - } else if argDef.SupportsStdin {
257 + } else {
258 if len(inputs) > 0 {
259 // don't use stdin if we have inputs
260 stdin = nil
@@ -267,14 +267,14 @@ func parseArgs(inputs []string, stdin *os.File, argDefs []cmds.Argument, recursi
267 }
268 }
269 } else if argDef.Type == cmds.ArgFile {
270 - if stdin == nil {
270 + if stdin == nil || !argDef.SupportsStdin {
271 // treat stringArg values as file paths
272 fileArgs, inputs, err = appendFile(fileArgs, inputs, argDef, recursive)
273 if err != nil {
274 return nil, nil, err
275 }
276
277 - } else if argDef.SupportsStdin {
277 + } else {
278 if len(inputs) > 0 {
279 // don't use stdin if we have inputs
280 stdin = nil