diff options
author | 2021-12-19 17:09:19 -0800 | |
---|---|---|
committer | 2021-12-19 17:09:19 -0800 | |
commit | 81e75761504b25dbb9f03375bd127a279fb40e90 (patch) | |
tree | 5a3bdd6393372833bd58f7a2d94b5ae1025c1a68 /src | |
parent | 2e69f15c20bb6703cd5b50db60fb3b1f6090c83f (diff) | |
download | bun-81e75761504b25dbb9f03375bd127a279fb40e90.tar.gz bun-81e75761504b25dbb9f03375bd127a279fb40e90.tar.zst bun-81e75761504b25dbb9f03375bd127a279fb40e90.zip |
Fix error and fix ../
Diffstat (limited to 'src')
-rw-r--r-- | src/install/dependency.zig | 4 | ||||
-rw-r--r-- | src/install/install.zig | 7 |
2 files changed, 6 insertions, 5 deletions
diff --git a/src/install/dependency.zig b/src/install/dependency.zig index 8e862af97..2f56753a3 100644 --- a/src/install/dependency.zig +++ b/src/install/dependency.zig @@ -540,10 +540,10 @@ pub fn parseWithTag( if (strings.indexOf(dependency, ":")) |protocol| { if (strings.eqlComptime(dependency[0..protocol], "file")) { if (dependency.len <= protocol) { - if (log_) |log| log.addErrorFmt(null, logger.Loc.Empty, allocator, "file: dependency missing a path", .{dependency}) catch unreachable; + if (log_) |log| log.addErrorFmt(null, logger.Loc.Empty, allocator, "\"file\" dependency missing a path", .{}) catch unreachable; return null; } - + return Version{ .literal = sliced.value(), .value = .{ .folder = sliced.sub(dependency[protocol + 1 ..]).value() }, .tag = .folder }; } diff --git a/src/install/install.zig b/src/install/install.zig index 7ce829714..638923739 100644 --- a/src/install/install.zig +++ b/src/install/install.zig @@ -6263,10 +6263,11 @@ pub const PackageManager = struct { // if node_modules/foo/package.json has a folder:, then this will not create a valid symlink .folder => { var folder_buf: [std.fs.MAX_PATH_BYTES]u8 = undefined; + const folder = resolution.value.folder.slice(buf); std.mem.copy(u8, &folder_buf, "../" ++ std.fs.path.sep_str); - std.mem.copy(u8, folder_buf["../".len..], name); - folder_buf["../".len + name.len] = 0; - var folderZ: [:0]u8 = folder_buf[0 .. "../".len + name.len :0]; + std.mem.copy(u8, folder_buf["../".len..], folder); + folder_buf["../".len + folder.len] = 0; + var folderZ: [:0]u8 = folder_buf[0 .. "../".len + folder.len :0]; const needs_install = this.force_install or this.skip_verify or brk: { std.mem.copy(u8, this.destination_dir_subpath_buf[name.len..], std.fs.path.sep_str ++ "package.json"); |