diff options
Diffstat (limited to 'src/client/common.rs')
| -rw-r--r-- | src/client/common.rs | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/src/client/common.rs b/src/client/common.rs index e889bc8..fb0c38e 100644 --- a/src/client/common.rs +++ b/src/client/common.rs @@ -693,11 +693,14 @@ fn to_json(kind: &PromptKind, value: &str) -> Value { fn set_proxy(builder: ClientBuilder, proxy: &Option<String>) -> Result<ClientBuilder> { let proxy = if let Some(proxy) = proxy { - if proxy.is_empty() || proxy == "false" || proxy == "-" { + if proxy.is_empty() || proxy == "-" { return Ok(builder); } proxy.clone() - } else if let Ok(proxy) = env::var("HTTPS_PROXY").or_else(|_| env::var("ALL_PROXY")) { + } else if let Some(proxy) = ["HTTPS_PROXY", "https_proxy", "ALL_PROXY", "all_proxy"] + .into_iter() + .find_map(|v| env::var(v).ok()) + { proxy } else { return Ok(builder); |
