From a05fa6d6bdd3e0c5b6879a7f4d0ac1a25971a246 Mon Sep 17 00:00:00 2001 From: Adnan Maolood Date: Mon, 15 Feb 2021 20:16:32 -0500 Subject: [PATCH] server: Avoid creating a new Listener after Close --- server.go | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/server.go b/server.go index 619d355..32afe27 100644 --- a/server.go +++ b/server.go @@ -117,6 +117,10 @@ func (srv *Server) HandleFunc(pattern string, handler func(ResponseWriter, *Requ // ListenAndServe always returns a non-nil error. After Shutdown or Close, the // returned error is ErrServerClosed. func (srv *Server) ListenAndServe() error { + if atomic.LoadInt32(&srv.done) == 1 { + return ErrServerClosed + } + addr := srv.Addr if addr == "" { addr = ":1965"