From 55e6298f290345f900bff9443cb8fb9a09e78965 Mon Sep 17 00:00:00 2001 From: playHing Date: Sat, 11 Jul 2020 02:06:09 +0800 Subject: [PATCH] Fix concurrent form parsing and getting --- context/input.go | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/context/input.go b/context/input.go index 7b522c36..46a18f03 100644 --- a/context/input.go +++ b/context/input.go @@ -333,7 +333,11 @@ func (input *BeegoInput) Query(key string) string { return val } if input.Context.Request.Form == nil { - input.Context.Request.ParseForm() + input.dataLock.Lock() + defer input.dataLock.Unlock() + if input.Context.Request.Form == nil { + input.Context.Request.ParseForm() + } } return input.Context.Request.Form.Get(key) }