hugolib: Defer the unlock in orderedMap.Add
authorBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sun, 22 Apr 2018 19:32:05 +0000 (21:32 +0200)
committerBjørn Erik Pedersen <bjorn.erik.pedersen@gmail.com>
Sun, 22 Apr 2018 19:32:05 +0000 (21:32 +0200)
Just in case someone tries to recover from the potential panic.

hugolib/orderedMap.go

index c8879baa79625a95bc75fb090a37c010a3cb65cd..457cd3d6e4bee68a88622b295c68679801aaa62c 100644 (file)
@@ -38,14 +38,13 @@ func newOrderedMapFromStringMapString(m map[string]string) *orderedMap {
 
 func (m *orderedMap) Add(k, v interface{}) {
        m.Lock()
+       defer m.Unlock()
        _, found := m.m[k]
        if found {
                panic(fmt.Sprintf("%v already added", v))
        }
        m.m[k] = v
        m.keys = append(m.keys, k)
-       m.Unlock()
-
 }
 
 func (m *orderedMap) Get(k interface{}) (interface{}, bool) {