Skip to content

Commit 9fd613f

Browse files
committed
fix: prevent panic when store.New returns nil session with error
Registry.Get panics with a nil pointer dereference when store.New returns a nil session and a non-nil error. The code unconditionally accesses session.name and session.store without checking for nil. Add nil checks to prevent the panic and return the error instead. Fixes #288
1 parent bb4cd60 commit 9fd613f

1 file changed

Lines changed: 6 additions & 1 deletion

File tree

sessions.go

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -137,9 +137,14 @@ func (s *Registry) Get(store Store, name string) (session *Session, err error) {
137137
session, err = info.s, info.e
138138
} else {
139139
session, err = store.New(s.request, name)
140-
session.name = name
140+
if session != nil {
141+
session.name = name
142+
}
141143
s.sessions[name] = sessionInfo{s: session, e: err}
142144
}
145+
if session == nil {
146+
return nil, err
147+
}
143148
session.store = store
144149
return
145150
}

0 commit comments

Comments
 (0)