From bc611a31a5b3003ba6c05d337093f9b83e898209 Mon Sep 17 00:00:00 2001 From: Michalis Kargakis Date: Sun, 21 Dec 2014 23:03:11 +0100 Subject: [PATCH] flag: Check for Set error Check for Set error when a boolean flag isn't explicitly given a value. Fixes #9345 Change-Id: I97a1289f8cf27567d1a726ebe5ef167c800f357c Reviewed-on: https://go-review.googlesource.com/1897 Reviewed-by: Andrew Gerrand Reviewed-by: Rob Pike --- src/flag/flag.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/flag/flag.go b/src/flag/flag.go index 25660054a7..8c0e402e38 100644 --- a/src/flag/flag.go +++ b/src/flag/flag.go @@ -767,7 +767,9 @@ func (f *FlagSet) parseOne() (bool, error) { return false, f.failf("invalid boolean value %q for -%s: %v", value, name, err) } } else { - fv.Set("true") + if err := fv.Set("true"); err != nil { + return false, f.failf("invalid boolean flag %s: %v", name, err) + } } } else { // It must have a value, which might be the next argument.