diff options
Diffstat (limited to 'src/Erebos/Discovery.hs')
| -rw-r--r-- | src/Erebos/Discovery.hs | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/Erebos/Discovery.hs b/src/Erebos/Discovery.hs index c287448..53cf744 100644 --- a/src/Erebos/Discovery.hs +++ b/src/Erebos/Discovery.hs @@ -242,14 +242,14 @@ emptyPeer = DiscoveryPeer viaFromPeer :: DiscoveryAttributes -> Peer -> DiscoveryPeer -> IO (Maybe DiscoveryVia) viaFromPeer attrs peer DiscoveryPeer {..} | Just dpeer <- dpPeer - , _ : _ <- dpAddress = do getPeerIdentity dpeer >>= \case PeerIdentityFull pid -> do offerTunnel <- offerTunnelBetween attrs peer dpeer let viaAddress = (if offerTunnel then (++ [ DiscoveryTunnel ]) else id) dpAddress let viaIdentity = refDigest $ storedRef $ idData pid - return $ Just DiscoveryVia {..} + return $ if null viaAddress then Nothing + else Just DiscoveryVia {..} _ -> return Nothing | otherwise = return Nothing |