From 5a8f925b385ea23d02fdb5718497c6379e42f914 Mon Sep 17 00:00:00 2001 From: kingcanfish Date: Sat, 9 Mar 2024 19:20:35 +0800 Subject: [PATCH] fix: protect Context.Keys map when call Copy method --- context.go | 2 ++ 1 file changed, 2 insertions(+) diff --git a/context.go b/context.go index 609827dd..59abee17 100644 --- a/context.go +++ b/context.go @@ -124,9 +124,11 @@ func (c *Context) Copy() *Context { cKeys := c.Keys cp.Keys = make(map[string]any, len(cKeys)) + c.mu.RLock() for k, v := range cKeys { cp.Keys[k] = v } + c.mu.RUnlock() cParams := c.Params cp.Params = make([]Param, len(cParams))