Преглед изворни кода

p2p: fix a dialing race in the throttler

Péter Szilágyi пре 10 година
родитељ
комит
29fef349ef
1 измењених фајлова са 1 додато и 1 уклоњено
  1. 1 1
      p2p/server.go

+ 1 - 1
p2p/server.go

@@ -422,13 +422,13 @@ func (srv *Server) dialLoop() {
 		}
 		// Request a dial slot to prevent CPU exhaustion
 		<-slots
-		defer func() { slots <- struct{}{} }()
 
 		dialing[dest.ID] = true
 		srv.peerWG.Add(1)
 		go func() {
 			srv.dialNode(dest)
 			dialed <- dest
+			slots <- struct{}{}
 		}()
 	}