Merge pull request #1019 from codysoyland/1018-handler-error

Close HTTP handler gracefully (Fixes #1018)
This commit is contained in:
Cody Soyland 2017-12-19 16:10:56 -06:00 • committed by GitHub
commit 8135eca1ca
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23

View file

@ -201,8 +201,13 @@ func (s *Server) Open() error {
// Serve HTTP.
go func() {
err := http.Serve(ln, s.Handler)
if err != nil {
server := &http.Server{Handler: s.Handler}
go func() {
<-s.closing
server.Close()
}()
err := server.Serve(ln)
if err != nil && err.Error() != "http: Server closed" {
s.Logger().Printf("HTTP handler terminated with error: %s\n", err)
}
}()