fix(network): explicitly disable proxy fallbacks for none and system modes

Disabled implicit system/environment variable proxy fallbacks in reqwest, yt-dlp, and aria2c when no proxy is explicitly provided. Updated useDownloadStore to strictly return 'none' when 'none' is selected or when 'system' proxy is empty, matching IDM/FDM behavior and ignoring http_proxy environment variables.
This commit is contained in:
NimBold
2026-06-23 04:21:25 +03:30
parent 6301bf9fd0
commit ddd4662898
4 changed files with 21 additions and 7 deletions
+6 -2
View File
@@ -872,8 +872,12 @@ impl SidecarSpawner for ProductionSpawner {
if !header_list.is_empty() {
options.insert("header".to_string(), serde_json::json!(header_list));
}
if let Some(prox) = &payload.proxy {
options.insert("all-proxy".to_string(), serde_json::json!(prox));
if let Some(prox) = payload.proxy.as_deref().filter(|s| !s.is_empty()) {
if prox == "none" {
options.insert("all-proxy".to_string(), serde_json::json!(""));
} else {
options.insert("all-proxy".to_string(), serde_json::json!(prox));
}
}
let uris = crate::collect_download_uris(&payload.url, payload.mirrors.as_deref());
let params = serde_json::json!([uris, options]);