From 3e2c795410da9e912f9d4b46bf862a212bec27ca Mon Sep 17 00:00:00 2001 From: playHing Date: Mon, 13 Jul 2020 23:11:23 +0800 Subject: [PATCH] Rlock for form query --- context/input.go | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/context/input.go b/context/input.go index 46a18f0377..385549c118 100644 --- a/context/input.go +++ b/context/input.go @@ -334,11 +334,13 @@ func (input *BeegoInput) Query(key string) string { } if input.Context.Request.Form == nil { input.dataLock.Lock() - defer input.dataLock.Unlock() if input.Context.Request.Form == nil { input.Context.Request.ParseForm() } + input.dataLock.Unlock() } + input.dataLock.RLock() + defer input.dataLock.RUnlock() return input.Context.Request.Form.Get(key) }