From aa4f9dac2fa03e86b4b3fab8a208285edba3cbcc Mon Sep 17 00:00:00 2001 From: Adin Schmahmann Date: Sun, 6 Dec 2020 14:53:25 -0500 Subject: [PATCH] fix: treat peers already connected to the host before pubsub is initialized as valid potential pubsub peers --- notify.go | 9 +++++++++ pubsub.go | 2 ++ 2 files changed, 11 insertions(+) diff --git a/notify.go b/notify.go index 1067cb4..07d2e1e 100644 --- a/notify.go +++ b/notify.go @@ -32,3 +32,12 @@ func (p *PubSubNotif) Listen(n network.Network, _ ma.Multiaddr) { func (p *PubSubNotif) ListenClose(n network.Network, _ ma.Multiaddr) { } + +func (p *PubSubNotif) Initialize() { + for _, pr := range p.host.Network().Peers() { + select { + case p.newPeers <- pr: + case <-p.ctx.Done(): + } + } +} diff --git a/pubsub.go b/pubsub.go index 6f898a2..3483ba3 100644 --- a/pubsub.go +++ b/pubsub.go @@ -292,6 +292,8 @@ func NewPubSub(ctx context.Context, h host.Host, rt PubSubRouter, opts ...Option go ps.processLoop(ctx) + (*PubSubNotif)(ps).Initialize() + return ps, nil } -- GitLab