diff --git a/command.go b/command.go index 01f7c6f1..54158f1e 100644 --- a/command.go +++ b/command.go @@ -1633,7 +1633,10 @@ func (c *Command) LocalFlags() *flag.FlagSet { addToLocal := func(f *flag.Flag) { // Add the flag if it is not a parent PFlag, or it shadows a parent PFlag if c.lflags.Lookup(f.Name) == nil && f != c.parentsPflags.Lookup(f.Name) { - c.lflags.AddFlag(f) + newFlag := &flag.Flag{} + *newFlag = *f + newFlag.Changed = false + c.lflags.AddFlag(newFlag) } } c.Flags().VisitAll(addToLocal)