Create new buffer if not present yet (#549)

Fixes a nil dereference when TraverseChildren is used
with multiple subcommands.
This commit is contained in:
Thomas Cyron
2017-10-12 20:25:33 +02:00
committed by Albert Nigmatzianov
parent 7cd9cc6d44
commit 7b2c5ac9fc
2 changed files with 29 additions and 0 deletions

View File

@ -1360,6 +1360,9 @@ func (c *Command) ParseFlags(args []string) error {
return nil
}
if c.flagErrorBuf == nil {
c.flagErrorBuf = new(bytes.Buffer)
}
beforeErrorBufLen := c.flagErrorBuf.Len()
c.mergePersistentFlags()
err := c.Flags().Parse(args)