summaryrefslogtreecommitdiff
path: root/src/network.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/network.rs')
-rw-r--r--src/network.rs27
1 files changed, 17 insertions, 10 deletions
diff --git a/src/network.rs b/src/network.rs
index 72f47e7..1a08053 100644
--- a/src/network.rs
+++ b/src/network.rs
@@ -160,20 +160,27 @@ impl Network {
.clone()
};
for p in peers {
- let sink = {
- let peer = p
- .lock()
- .await;
- Arc::clone(&peer.sink)
- };
- let mut sink = sink
+ p.lock()
+ .await
+ .sink
.lock()
- .await;
- let _ = sink
+ .await
.send(data.clone())
- .await;
+ .await
+ .unwrap();
}
}
+
+ async fn write(peer: &mut Peer, data: Request) -> Result<(), std::io::Error> {
+ let sink = peer
+ .sink
+ .clone();
+ let mut sink = sink
+ .lock()
+ .await;
+ sink.send(data.clone())
+ .await
+ }
}
struct Peer {