Advertisement
Guest User

Untitled

a guest
Apr 12th, 2018
100
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Diff 1.64 KB | None | 0 0
  1. diff --git a/src/net/http/server.go b/src/net/http/server.go
  2. index 114a2263c3..b053d38380 100644
  3. --- a/src/net/http/server.go
  4. +++ b/src/net/http/server.go
  5. @@ -2485,7 +2485,7 @@ type Server struct {
  6.     nextProtoErr      error     // result of http2.ConfigureServer if used
  7.  
  8.     mu         sync.Mutex
  9. -   listeners  map[net.Listener]struct{}
  10. +   listeners  map[*net.Listener]struct{}
  11.     activeConn map[*conn]struct{}
  12.     doneChan   chan struct{}
  13.     onShutdown []func()
  14. @@ -2621,7 +2621,7 @@ func (s *Server) closeIdleConns() bool {
  15.  func (s *Server) closeListenersLocked() error {
  16.     var err error
  17.     for ln := range s.listeners {
  18. -       if cerr := ln.Close(); cerr != nil && err == nil {
  19. +       if cerr := (*ln).Close(); cerr != nil && err == nil {
  20.             err = cerr
  21.         }
  22.         delete(s.listeners, ln)
  23. @@ -2765,8 +2765,8 @@ func (srv *Server) Serve(l net.Listener) error {
  24.         return err
  25.     }
  26.  
  27. -   srv.trackListener(l, true)
  28. -   defer srv.trackListener(l, false)
  29. +   srv.trackListener(&l, true)
  30. +   defer srv.trackListener(&l, false)
  31.  
  32.     baseCtx := context.Background() // base is always background, per Issue 16220
  33.     ctx := context.WithValue(baseCtx, ServerContextKey, srv)
  34. @@ -2843,11 +2843,11 @@ func (srv *Server) ServeTLS(l net.Listener, certFile, keyFile string) error {
  35.     return srv.Serve(tlsListener)
  36.  }
  37.  
  38. -func (s *Server) trackListener(ln net.Listener, add bool) {
  39. +func (s *Server) trackListener(ln *net.Listener, add bool) {
  40.     s.mu.Lock()
  41.     defer s.mu.Unlock()
  42.     if s.listeners == nil {
  43. -       s.listeners = make(map[net.Listener]struct{})
  44. +       s.listeners = make(map[*net.Listener]struct{})
  45.     }
  46.     if add {
  47.         // If the *Server is being reused after a previous
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement