From 7e656661fad8674535c7b839b19f6fc156cf6ec9 Mon Sep 17 00:00:00 2001 From: squiidz Date: Mon, 5 Oct 2015 10:21:20 -0400 Subject: [PATCH] update match function --- route.go | 32 ++++++++++++++++---------------- 1 file changed, 16 insertions(+), 16 deletions(-) diff --git a/route.go b/route.go index abe2f5b..b69314c 100644 --- a/route.go +++ b/route.go @@ -94,27 +94,27 @@ func (r *Route) Match(req *http.Request) bool { ss := strings.Split(req.URL.Path, "/") if r.matchRawTokens(&ss) { - // - if vars.v[req] == nil { - vars.Lock() - vars.v[req] = make(map[string]string) - vars.Unlock() - } - for k, v := range r.Pattern { - if len(ss) >= r.Token.Size { + if len(ss) >= r.Token.Size { + + if vars.v[req] == nil { + vars.Lock() + vars.v[req] = make(map[string]string) + vars.Unlock() + } + for k, v := range r.Pattern { vars.v[req][v] = ss[k] } - } - if r.Atts®EX != 0 { - for k, v := range r.Compile { - if !v.MatchString(ss[k]) { - return false + if r.Atts®EX != 0 { + for k, v := range r.Compile { + if !v.MatchString(ss[k]) { + return false + } + vars.v[req][r.Tag[k]] = ss[k] } - vars.v[req][r.Tag[k]] = ss[k] } - } - return true + return true + } } return false }