diff options
author | 2022-07-12 22:55:38 -0700 | |
---|---|---|
committer | 2022-07-12 22:55:38 -0700 | |
commit | dd7a346ac83348c22512ba37f041725265015089 (patch) | |
tree | 8db3db05a85bcc5adf55fa5064fd15336eb3db03 /src | |
parent | d3963d6ea2f8e1065152060566e21de69b41d5d4 (diff) | |
download | bun-dd7a346ac83348c22512ba37f041725265015089.tar.gz bun-dd7a346ac83348c22512ba37f041725265015089.tar.zst bun-dd7a346ac83348c22512ba37f041725265015089.zip |
[bun install] Handle case that should really never happen
Diffstat (limited to 'src')
-rw-r--r-- | src/install/install.zig | 22 |
1 files changed, 12 insertions, 10 deletions
diff --git a/src/install/install.zig b/src/install/install.zig index 3954e1410..764191e79 100644 --- a/src/install/install.zig +++ b/src/install/install.zig @@ -4064,19 +4064,21 @@ pub const PackageManager = struct { const name = this.names[package_id].slice(buf); const resolution = this.resolutions[package_id]; - var callbacks = this.manager.task_queue.fetchRemove(Task.Id.forNPMPackage( + if (this.manager.task_queue.fetchRemove(Task.Id.forNPMPackage( Task.Tag.extract, name, resolution.value.npm, - )).?.value; - defer callbacks.deinit(this.manager.allocator); - - const prev_node_modules_folder = this.node_modules_folder; - defer this.node_modules_folder = prev_node_modules_folder; - for (callbacks.items) |cb| { - const node_modules_folder = cb.node_modules_folder; - this.node_modules_folder = std.fs.Dir{ .fd = @intCast(std.os.fd_t, node_modules_folder) }; - this.installPackageWithNameAndResolution(package_id, log_level, name, resolution); + ))) |removed| { + var callbacks = removed.value; + defer callbacks.deinit(this.manager.allocator); + + const prev_node_modules_folder = this.node_modules_folder; + defer this.node_modules_folder = prev_node_modules_folder; + for (callbacks.items) |cb| { + const node_modules_folder = cb.node_modules_folder; + this.node_modules_folder = std.fs.Dir{ .fd = @intCast(std.os.fd_t, node_modules_folder) }; + this.installPackageWithNameAndResolution(package_id, log_level, name, resolution); + } } } |