diff --git a/network/follow.go b/network/follow.go
index b4bb7327a5f58c82cf9b60c62bf953a098ab5d25..b5ff8ea198a388329b83a90c1e5bf72a8b9d4ed5 100644
--- a/network/follow.go
+++ b/network/follow.go
@@ -50,11 +50,12 @@ func (m *manager) followNetwork(quitCh <-chan struct{}) {
 	ticker := time.NewTicker(m.param.TrackNetworkPeriod)
 	rng := m.Rng.GetStream()
 
-	for {
+	done := false
+	for !done{
 		select {
 		case <-quitCh:
 			rng.Close()
-			break
+			done=true
 		case <-ticker.C:
 			m.follow(rng, m.Comms)
 		}