Avoid race condition in isInnerShortcode - hugo - [fork] hugo port for 9front
HTML git clone git@git.drkhsh.at/hugo.git
DIR Log
DIR Files
DIR Refs
DIR Submodules
DIR README
DIR LICENSE
---
DIR commit c33a8528f864b71f046e0325121a809580d85531
DIR parent a3892685bc33b7518894ea21ae2d8a7c9f29e735
HTML Author: bep <bjorn.erik.pedersen@gmail.com>
Date: Fri, 20 Feb 2015 17:41:37 +0100
Avoid race condition in isInnerShortcode
As reported by Go's race detector.
See #917
Diffstat:
M hugolib/shortcode.go | 5 ++---
1 file changed, 2 insertions(+), 3 deletions(-)
---
DIR diff --git a/hugolib/shortcode.go b/hugolib/shortcode.go
@@ -160,11 +160,10 @@ func isInnerShortcode(t *template.Template) bool {
return m
}
- match, _ := regexp.MatchString("{{.*?\\.Inner.*?}}", t.Tree.Root.String())
-
isInnerShortcodeCache.Lock()
+ defer isInnerShortcodeCache.Unlock()
+ match, _ := regexp.MatchString("{{.*?\\.Inner.*?}}", t.Tree.Root.String())
isInnerShortcodeCache.m[t.Name()] = match
- isInnerShortcodeCache.Unlock()
return match
}