mirror of
https://github.com/astaxie/beego.git
synced 2024-11-22 11:50:55 +00:00
fix SessionRegenerateID should release old SessionStore and release new SessionStore in router.go
This commit is contained in:
parent
3b99f37aa1
commit
6e9ba0ea7f
@ -165,7 +165,7 @@ func (c *Controller) RenderBytes() ([]byte, error) {
|
||||
|
||||
if c.LayoutSections != nil {
|
||||
for sectionName, sectionTpl := range c.LayoutSections {
|
||||
if (sectionTpl == "") {
|
||||
if sectionTpl == "" {
|
||||
c.Data[sectionName] = ""
|
||||
continue
|
||||
}
|
||||
@ -391,6 +391,7 @@ func (c *Controller) DelSession(name interface{}) {
|
||||
// SessionRegenerateID regenerates session id for this session.
|
||||
// the session data have no changes.
|
||||
func (c *Controller) SessionRegenerateID() {
|
||||
c.CruSession.SessionRelease(c.Ctx.ResponseWriter)
|
||||
c.CruSession = GlobalSessions.SessionRegenerateId(c.Ctx.ResponseWriter, c.Ctx.Request)
|
||||
c.Ctx.Input.CruSession = c.CruSession
|
||||
}
|
||||
|
@ -529,7 +529,9 @@ func (p *ControllerRegistor) ServeHTTP(rw http.ResponseWriter, r *http.Request)
|
||||
// session init
|
||||
if SessionOn {
|
||||
context.Input.CruSession = GlobalSessions.SessionStart(w, r)
|
||||
defer context.Input.CruSession.SessionRelease(w)
|
||||
defer func() {
|
||||
context.Input.CruSession.SessionRelease(w)
|
||||
}()
|
||||
}
|
||||
|
||||
if !utils.InSlice(strings.ToLower(r.Method), HTTPMETHOD) {
|
||||
|
Loading…
Reference in New Issue
Block a user