From 2af0c569a578aed91df53c1c3bebd53fd8e5062c Mon Sep 17 00:00:00 2001 From: "MrLee.Kun" Date: Sun, 14 Jun 2015 01:02:41 +0800 Subject: [PATCH] The last filterFunc with returnOnOutput=ture won't be executed ex: beego.InsertFilter("/*", beego.BeforeExec, FilterLoginCheck1,false) beego.InsertFilter("/*", beego.BeforeExec, FilterLoginCheck2) In function FilterLoginCheck1 , I'll write data via ResponseWriter, and w.started = true FilterLoginCheck2 won't be executed, it should be. --- router.go | 3 --- 1 file changed, 3 deletions(-) diff --git a/router.go b/router.go index ca6d917a..688b227d 100644 --- a/router.go +++ b/router.go @@ -611,9 +611,6 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request) if p.enableFilter { if l, ok := p.filters[pos]; ok { for _, filterR := range l { - if filterR.returnOnOutput && w.started { - return true - } if ok, params := filterR.ValidRouter(urlPath); ok { for k, v := range params { context.Input.Params[k] = v