zig

fork of https://codeberg.org/ziglang/zig
Log | Files | Refs | README | LICENSE

commit f79dacbfc4876c2799c7a2dcd2b29af71d43d006 (tree)
parent dc75a64c468c99f801af47b7a0dfc76121a46e8b
Author: Elijah M. Immer <me@eimmer.me>
Date:   Fri, 14 Mar 2025 13:20:42 -0700

lib/std/http/Client.zig: Ignore empty proxy environment variables (#23223)

This fixes #21032 by ignoring proxy environment variables that are
empty.
Diffstat:
Mlib/std/http/Client.zig | 6+++++-
1 file changed, 5 insertions(+), 1 deletion(-)

diff --git a/lib/std/http/Client.zig b/lib/std/http/Client.zig @@ -1241,10 +1241,14 @@ pub fn initDefaultProxies(client: *Client, arena: Allocator) !void { fn createProxyFromEnvVar(arena: Allocator, env_var_names: []const []const u8) !?*Proxy { const content = for (env_var_names) |name| { - break std.process.getEnvVarOwned(arena, name) catch |err| switch (err) { + const content = std.process.getEnvVarOwned(arena, name) catch |err| switch (err) { error.EnvironmentVariableNotFound => continue, else => |e| return e, }; + + if (content.len == 0) continue; + + break content; } else return null; const uri = Uri.parse(content) catch try Uri.parseAfterScheme("http", content);