aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorGravatar Ai Hoshino <ambiguous404@gmail.com> 2023-09-15 20:24:03 +0800
committerGravatar GitHub <noreply@github.com> 2023-09-15 05:24:03 -0700
commit7d0db82bb3b1ac0ecd2fcc42e85734a588968112 (patch)
tree7a9da72a299b6a39313fe93c6652b4f57634bb7a /src
parent4b00144211b5c65aba1d693c6b9a51763b58567d (diff)
downloadbun-7d0db82bb3b1ac0ecd2fcc42e85734a588968112.tar.gz
bun-7d0db82bb3b1ac0ecd2fcc42e85734a588968112.tar.zst
bun-7d0db82bb3b1ac0ecd2fcc42e85734a588968112.zip
fix(proxy): allow empty string `http_proxy` env. (#5464)
Close: #5380
Diffstat (limited to 'src')
-rw-r--r--src/env_loader.zig12
1 files changed, 9 insertions, 3 deletions
diff --git a/src/env_loader.zig b/src/env_loader.zig
index 9d0c69d04..2d467371a 100644
--- a/src/env_loader.zig
+++ b/src/env_loader.zig
@@ -102,18 +102,24 @@ pub const Loader = struct {
if (url.isHTTP()) {
if (this.map.get("http_proxy") orelse this.map.get("HTTP_PROXY")) |proxy| {
- if (proxy.len > 0) http_proxy = URL.parse(proxy);
+ if (proxy.len > 0 and !strings.eqlComptime(proxy, "\"\"") and !strings.eqlComptime(proxy, "''")) {
+ http_proxy = URL.parse(proxy);
+ }
}
} else {
if (this.map.get("https_proxy") orelse this.map.get("HTTPS_PROXY")) |proxy| {
- if (proxy.len > 0) http_proxy = URL.parse(proxy);
+ if (proxy.len > 0 and !strings.eqlComptime(proxy, "\"\"") and !strings.eqlComptime(proxy, "''")) {
+ http_proxy = URL.parse(proxy);
+ }
}
}
// NO_PROXY filter
if (http_proxy != null) {
if (this.map.get("no_proxy") orelse this.map.get("NO_PROXY")) |no_proxy_text| {
- if (no_proxy_text.len == 0) return http_proxy;
+ if (no_proxy_text.len == 0 or strings.eqlComptime(no_proxy_text, "\"\"") or strings.eqlComptime(no_proxy_text, "''")) {
+ return http_proxy;
+ }
var no_proxy_list = std.mem.split(u8, no_proxy_text, ",");
var next = no_proxy_list.next();