forked from quic-go/quic-go
fix race condition when creating the logger for the HTTP/3 server
This commit is contained in:
@@ -71,6 +71,7 @@ type Server struct {
|
|||||||
listeners map[*quic.EarlyListener]struct{}
|
listeners map[*quic.EarlyListener]struct{}
|
||||||
closed utils.AtomicBool
|
closed utils.AtomicBool
|
||||||
|
|
||||||
|
loggerOnce sync.Once
|
||||||
logger utils.Logger
|
logger utils.Logger
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -112,7 +113,9 @@ func (s *Server) serveImpl(tlsConf *tls.Config, conn net.PacketConn) error {
|
|||||||
if s.Server == nil {
|
if s.Server == nil {
|
||||||
return errors.New("use of http3.Server without http.Server")
|
return errors.New("use of http3.Server without http.Server")
|
||||||
}
|
}
|
||||||
|
s.loggerOnce.Do(func() {
|
||||||
s.logger = utils.DefaultLogger.WithPrefix("server")
|
s.logger = utils.DefaultLogger.WithPrefix("server")
|
||||||
|
})
|
||||||
|
|
||||||
if tlsConf == nil {
|
if tlsConf == nil {
|
||||||
tlsConf = &tls.Config{}
|
tlsConf = &tls.Config{}
|
||||||
|
|||||||
Reference in New Issue
Block a user