adjust Copy method for gin Context

This commit is contained in:
daheige 2021-04-21 22:03:44 +08:00
parent c0418c48e4
commit 3f726c6ad8
1 changed files with 6 additions and 4 deletions

View File

@ -49,6 +49,7 @@ type Context struct {
Writer ResponseWriter Writer ResponseWriter
Params Params Params Params
// when the operation is not initialized, the default is nil slice
handlers HandlersChain handlers HandlersChain
index int8 index int8
fullPath string fullPath string
@ -107,12 +108,13 @@ func (c *Context) Copy() *Context {
Request: c.Request, Request: c.Request,
Params: c.Params, Params: c.Params,
engine: c.engine, engine: c.engine,
Keys: make(map[string]interface{}, len(c.Keys)),
index: abortIndex,
handlers: nil,
} }
cp.writermem.ResponseWriter = nil cp.writermem.ResponseWriter = nil
cp.Writer = &cp.writermem cp.Writer = &cp.writermem
cp.index = abortIndex
cp.handlers = nil
cp.Keys = map[string]interface{}{}
for k, v := range c.Keys { for k, v := range c.Keys {
cp.Keys[k] = v cp.Keys[k] = v
} }