aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/bunfig.zig16
1 files changed, 12 insertions, 4 deletions
diff --git a/src/bunfig.zig b/src/bunfig.zig
index 76f33cb82..bb52e3053 100644
--- a/src/bunfig.zig
+++ b/src/bunfig.zig
@@ -64,19 +64,27 @@ pub const Bunfig = struct {
// Token
if (url.username.len == 0 and url.password.len > 0) {
registry.token = url.password;
- registry.url = try std.fmt.allocPrint(this.allocator, "{s}://{s}/{s}", .{ url.displayProtocol(), url.displayHostname(), std.mem.trimLeft(u8, url.pathname, "/") });
+ registry.url = try std.fmt.allocPrint(this.allocator, "{s}://{s}/{s}/", .{ url.displayProtocol(), url.displayHostname(), std.mem.trim(u8, url.pathname, "/") });
} else if (url.username.len > 0 and url.password.len > 0) {
registry.username = url.username;
registry.password = url.password;
- registry.url = try std.fmt.allocPrint(this.allocator, "{s}://{s}/{s}", .{ url.displayProtocol(), url.displayHostname(), std.mem.trimLeft(u8, url.pathname, "/") });
+ registry.url = try std.fmt.allocPrint(this.allocator, "{s}://{s}/{s}/", .{ url.displayProtocol(), url.displayHostname(), std.mem.trim(u8, url.pathname, "/") });
} else {
- registry.url = url.href;
+ if (strings.hasSuffixComptime(url.href, "/")) {
+ registry.url = url.href;
+ } else {
+ registry.url = try std.fmt.allocPrint(this.allocator, "{s}/", .{url.href});
+ }
}
},
.e_object => |obj| {
if (obj.get("url")) |url| {
try this.expect(url, .e_string);
- registry.url = url.data.e_string.data;
+ if (strings.hasSuffixComptime(url.data.e_string.data, "/")) {
+ registry.url = url.data.e_string.data;
+ } else {
+ registry.url = try std.fmt.allocPrint(this.allocator, "{s}/", .{url.data.e_string.data});
+ }
}
if (obj.get("username")) |username| {