@cryptotaxi247 / kubo / commits / f7cb6b996

fix: respect ctx on receive

@jbenet License: MIT Signed-off-by: Brian Tiger Chow <brian@perfmode.com>

Brian Tiger Chow committed Dec 5, 2014 at 22:54 UTC f7cb6b996339615df134c04c9cdd4902bfbaae7e
1 file changed +6 -1
routing/dht/providers.go
+6 -1
@@ -107,10 +107,15 @@ func (pm *ProviderManager) GetProviders(ctx context.Context, k u.Key) []peer.Pee
107 resp: make(chan []peer.Peer, 1), // buffered to prevent sender from blocking
108 }
109 select {
110 + case <-ctx.Done():
111 + return nil
112 case pm.getprovs <- gp:
111 - return <-gp.resp
113 + }
114 + select {
115 case <-ctx.Done():
116 return nil
117 + case peers := <-gp.resp:
118 + return peers
119 }
120 }
121