From 13753a46772cc7fe7579bdc669ffccc7a6c3bf00 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Roman=20Smr=C5=BE?= Date: Wed, 18 Feb 2026 19:28:39 +0100 Subject: Notify listeners when peer is automatically dropped --- src/Erebos/Network.hs | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) (limited to 'src/Erebos/Network.hs') diff --git a/src/Erebos/Network.hs b/src/Erebos/Network.hs index e9f85e4..e7b08a0 100644 --- a/src/Erebos/Network.hs +++ b/src/Erebos/Network.hs @@ -403,9 +403,7 @@ startServer serverOptions serverOrigHead logd' serverServices = do case paddr of DatagramAddress _ -> return () CustomPeerAddress caddr -> connectionToAddressClosed caddr - dropPeer peer - atomically $ writeTChan serverChanPeer peer peerLoop ReceivedAnnounce addr _ -> do @@ -902,8 +900,10 @@ dropPeerInner :: Peer -> Map PeerAddress Peer -> IO (Map PeerAddress Peer) dropPeerInner peer pvalue = do atomically $ do readTVar (peerState peer) >>= \case - PeerConnected conn -> connClose conn - _ -> return() + PeerConnected conn -> do + connClose conn + writeTChan (serverChanPeer $ peerServer peer) peer + _ -> return () writeTVar (peerState peer) PeerDropped return $ M.delete (peerAddress peer) pvalue -- cgit v1.2.3