spawn_peer_adder: Option<PeerStream> -> PeerStream
This commit is contained in:
parent
b796a8767b
commit
e440f03970
1 changed files with 7 additions and 9 deletions
|
|
@ -269,7 +269,7 @@ impl ManagedTorrent {
|
||||||
);
|
);
|
||||||
};
|
};
|
||||||
|
|
||||||
fn spawn_peer_adder(live: &Arc<TorrentStateLive>, peer_rx: Option<PeerStream>) {
|
fn spawn_peer_adder(live: &Arc<TorrentStateLive>, mut peer_rx: PeerStream) {
|
||||||
live.spawn(
|
live.spawn(
|
||||||
error_span!(parent: live.torrent().span.clone(), "external_peer_adder"),
|
error_span!(parent: live.torrent().span.clone(), "external_peer_adder"),
|
||||||
{
|
{
|
||||||
|
|
@ -281,12 +281,6 @@ impl ManagedTorrent {
|
||||||
weak
|
weak
|
||||||
};
|
};
|
||||||
|
|
||||||
let mut peer_rx = if let Some(peer_rx) = peer_rx {
|
|
||||||
peer_rx
|
|
||||||
} else {
|
|
||||||
return Ok(());
|
|
||||||
};
|
|
||||||
|
|
||||||
loop {
|
loop {
|
||||||
match timeout(Duration::from_secs(5), peer_rx.next()).await {
|
match timeout(Duration::from_secs(5), peer_rx.next()).await {
|
||||||
Ok(Some(peer)) => {
|
Ok(Some(peer)) => {
|
||||||
|
|
@ -359,7 +353,9 @@ impl ManagedTorrent {
|
||||||
t.state_change_notify.notify_waiters();
|
t.state_change_notify.notify_waiters();
|
||||||
|
|
||||||
spawn_fatal_errors_receiver(&t, rx, token);
|
spawn_fatal_errors_receiver(&t, rx, token);
|
||||||
spawn_peer_adder(&live, peer_rx);
|
if let Some(peer_rx) = peer_rx {
|
||||||
|
spawn_peer_adder(&live, peer_rx);
|
||||||
|
}
|
||||||
|
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
|
|
@ -382,7 +378,9 @@ impl ManagedTorrent {
|
||||||
drop(g);
|
drop(g);
|
||||||
|
|
||||||
spawn_fatal_errors_receiver(self, rx, cancellation_token);
|
spawn_fatal_errors_receiver(self, rx, cancellation_token);
|
||||||
spawn_peer_adder(&live, peer_rx);
|
if let Some(peer_rx) = peer_rx {
|
||||||
|
spawn_peer_adder(&live, peer_rx);
|
||||||
|
}
|
||||||
Ok(())
|
Ok(())
|
||||||
}
|
}
|
||||||
ManagedTorrentState::Error(_) => {
|
ManagedTorrentState::Error(_) => {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue