Commit 87e8bcc9 authored by MrLee.Kun's avatar MrLee.Kun

fix FilterHandler crash issue

Filter Handler will crash with error assignment to entry in nil map , params from function Tree.Match() maybe nil.
parent 31e5edbd
...@@ -616,6 +616,9 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request) ...@@ -616,6 +616,9 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
} }
if ok, params := filterR.ValidRouter(urlPath); ok { if ok, params := filterR.ValidRouter(urlPath); ok {
for k, v := range params { for k, v := range params {
if context.Input.Params == nil {
context.Input.Params = make(map[string]string)
}
context.Input.Params[k] = v context.Input.Params[k] = v
} }
filterR.filterFunc(context) filterR.filterFunc(context)
...@@ -699,7 +702,9 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request) ...@@ -699,7 +702,9 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
p[strconv.Itoa(k)] = v p[strconv.Itoa(k)] = v
} }
} }
context.Input.Params = p if p != nil {
context.Input.Params = p
}
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment