Skip to content

Commit 0e0f241

Browse files
authored
Merge pull request #918 from rsteube/storage-mutex-defer
storage: use defer
2 parents f3f8d72 + fbb1cac commit 0e0f241

1 file changed

Lines changed: 9 additions & 6 deletions

File tree

storage.go

Lines changed: 9 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -140,13 +140,16 @@ func (s _storage) getPositional(cmd *cobra.Command, index int) Action {
140140
func (s _storage) check() []string {
141141
errors := make([]string, 0)
142142
for cmd, entry := range s {
143-
entry.flagMutex.RLock()
144-
for name := range entry.flag {
145-
if flag := cmd.LocalFlags().Lookup(name); flag == nil {
146-
errors = append(errors, fmt.Sprintf("unknown flag for %s: %s\n", uid.Command(cmd), name))
143+
func() {
144+
entry.flagMutex.RLock()
145+
defer entry.flagMutex.RUnlock()
146+
147+
for name := range entry.flag {
148+
if flag := cmd.LocalFlags().Lookup(name); flag == nil {
149+
errors = append(errors, fmt.Sprintf("unknown flag for %s: %s\n", uid.Command(cmd), name))
150+
}
147151
}
148-
}
149-
entry.flagMutex.RUnlock()
152+
}()
150153
}
151154
return errors
152155
}

0 commit comments

Comments
 (0)