diff --git a/grace/server.go b/grace/server.go index 0af466a8..008a6171 100644 --- a/grace/server.go +++ b/grace/server.go @@ -46,7 +46,10 @@ func (srv *Server) Serve() (err error) { log.Println(syscall.Getpid(), srv.ln.Addr(), "Listener closed.") // wait for Shutdown to return - return <-srv.terminalChan + if shutdownErr := <-srv.terminalChan; shutdownErr != nil { + return shutdownErr + } + return } // ListenAndServe listens on the TCP network address srv.Addr and then calls Serve