A couple touch-ups
This commit is contained in:
parent
82f167d50d
commit
9e4c465336
1 changed files with 11 additions and 9 deletions
|
|
@ -1008,12 +1008,11 @@ impl Session {
|
||||||
name,
|
name,
|
||||||
} = add_res;
|
} = add_res;
|
||||||
|
|
||||||
let peer_stream_permanent = !opts.paused && !opts.list_only;
|
|
||||||
let make_peer_rx = || {
|
let make_peer_rx = || {
|
||||||
self.make_peer_rx(
|
self.make_peer_rx(
|
||||||
info_hash,
|
info_hash,
|
||||||
trackers.clone(),
|
trackers.clone(),
|
||||||
peer_stream_permanent,
|
!opts.paused && !opts.list_only,
|
||||||
opts.force_tracker_interval,
|
opts.force_tracker_interval,
|
||||||
opts.initial_peers.clone().unwrap_or_default(),
|
opts.initial_peers.clone().unwrap_or_default(),
|
||||||
)
|
)
|
||||||
|
|
@ -1026,7 +1025,7 @@ impl Session {
|
||||||
match metadata {
|
match metadata {
|
||||||
Some(metadata) => {
|
Some(metadata) => {
|
||||||
let mut peer_rx = None;
|
let mut peer_rx = None;
|
||||||
if peer_stream_permanent {
|
if !opts.paused && !opts.list_only {
|
||||||
peer_rx = make_peer_rx()?;
|
peer_rx = make_peer_rx()?;
|
||||||
}
|
}
|
||||||
(metadata, peer_rx)
|
(metadata, peer_rx)
|
||||||
|
|
@ -1038,6 +1037,9 @@ impl Session {
|
||||||
let resolved_magnet = self
|
let resolved_magnet = self
|
||||||
.resolve_magnet(info_hash, peer_rx, &trackers, opts.peer_opts)
|
.resolve_magnet(info_hash, peer_rx, &trackers, opts.peer_opts)
|
||||||
.await?;
|
.await?;
|
||||||
|
|
||||||
|
// Add back seen_peers into the peer stream, as we consumed some peers
|
||||||
|
// while resolving the magnet.
|
||||||
seen_peers = resolved_magnet.seen_peers.clone();
|
seen_peers = resolved_magnet.seen_peers.clone();
|
||||||
let peer_rx = Some(
|
let peer_rx = Some(
|
||||||
merge_streams(
|
merge_streams(
|
||||||
|
|
@ -1072,12 +1074,6 @@ impl Session {
|
||||||
(None, Some(s)) => self.output_folder.join(s),
|
(None, Some(s)) => self.output_folder.join(s),
|
||||||
};
|
};
|
||||||
|
|
||||||
let storage_factory = opts
|
|
||||||
.storage_factory
|
|
||||||
.take()
|
|
||||||
.or_else(|| self.default_storage_factory.as_ref().map(|f| f.clone_box()))
|
|
||||||
.unwrap_or_else(|| FilesystemStorageFactory::default().boxed());
|
|
||||||
|
|
||||||
if opts.list_only {
|
if opts.list_only {
|
||||||
return Ok(AddTorrentResponse::ListOnly(ListOnlyResponse {
|
return Ok(AddTorrentResponse::ListOnly(ListOnlyResponse {
|
||||||
info_hash,
|
info_hash,
|
||||||
|
|
@ -1089,6 +1085,12 @@ impl Session {
|
||||||
}));
|
}));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
let storage_factory = opts
|
||||||
|
.storage_factory
|
||||||
|
.take()
|
||||||
|
.or_else(|| self.default_storage_factory.as_ref().map(|f| f.clone_box()))
|
||||||
|
.unwrap_or_else(|| FilesystemStorageFactory::default().boxed());
|
||||||
|
|
||||||
let id = if let Some(id) = opts.preferred_id {
|
let id = if let Some(id) = opts.preferred_id {
|
||||||
id
|
id
|
||||||
} else if let Some(p) = self.persistence.as_ref() {
|
} else if let Some(p) = self.persistence.as_ref() {
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue