oauth2 icon indicating copy to clipboard operation
oauth2 copied to clipboard

ineffectual assignment to `err`

Open tegk opened this issue 6 years ago • 2 comments

What is supposed to happen with err as it is assigned but not used? Is it meant to be uerr?

server/server.go:65:2

func (s *Server) redirectError(w http.ResponseWriter, req *AuthorizeRequest, err error) (uerr error) {
	if req == nil {
		uerr = err
		return
	}
	data, _, _ := s.GetErrorData(err)
	err = s.redirect(w, req, data)
	return
}

tegk avatar Nov 07 '19 14:11 tegk

Yes, this is a bug, I will fix it as soon as possible, thank you.

LyricTian avatar Nov 07 '19 15:11 LyricTian

I generally suggest to not use naked returns as assignment bugs can be prevented by this.

Something like this should be much better to read :-)

func (s *Server) redirectError(w http.ResponseWriter, req *AuthorizeRequest, errPassed error) error {
	if req == nil {
            return errPassed
	}
	data, _, _ := s.GetErrorData(err)
	err := s.redirect(w, req, data)
        if err != nil{
           return err
        }
	return nil
}

tegk avatar Nov 07 '19 15:11 tegk