Compare commits

...

1 Commits

Author SHA1 Message Date
Jarred Sumner
4ec92404c5 Prefer bun.sys.exists over std.posix.access 2025-07-15 02:33:53 -07:00
3 changed files with 13 additions and 13 deletions

View File

@@ -241,8 +241,9 @@ pub fn fromJS(vm: *JSC.VirtualMachine, global: *JSC.JSGlobalObject, obj: JSC.JSV
var sliced = try key_file_name.toSlice(global, bun.default_allocator);
defer sliced.deinit();
if (sliced.len > 0) {
result.key_file_name = try bun.default_allocator.dupeZ(u8, sliced.slice());
if (std.posix.system.access(result.key_file_name, std.posix.F_OK) != 0) {
const key_file_name_ = try bun.default_allocator.dupeZ(u8, sliced.slice());
result.key_file_name = key_file_name_;
if (bun.sys.existsAtType(key_file_name_).unwrapOr(.directory) != .file) {
return global.throwInvalidArguments("Unable to access keyFile path", .{});
}
any = true;
@@ -333,8 +334,9 @@ pub fn fromJS(vm: *JSC.VirtualMachine, global: *JSC.JSGlobalObject, obj: JSC.JSV
var sliced = try cert_file_name.toSlice(global, bun.default_allocator);
defer sliced.deinit();
if (sliced.len > 0) {
result.cert_file_name = try bun.default_allocator.dupeZ(u8, sliced.slice());
if (std.posix.system.access(result.cert_file_name, std.posix.F_OK) != 0) {
const cert_file_name_ = try bun.default_allocator.dupeZ(u8, sliced.slice());
result.cert_file_name = cert_file_name_;
if (bun.sys.existsAtType(cert_file_name_).unwrapOr(.directory) != .file) {
return global.throwInvalidArguments("Unable to access certFile path", .{});
}
any = true;
@@ -550,8 +552,9 @@ pub fn fromJS(vm: *JSC.VirtualMachine, global: *JSC.JSGlobalObject, obj: JSC.JSV
var sliced = try ca_file_name.toSlice(global, bun.default_allocator);
defer sliced.deinit();
if (sliced.len > 0) {
result.ca_file_name = try bun.default_allocator.dupeZ(u8, sliced.slice());
if (std.posix.system.access(result.ca_file_name, std.posix.F_OK) != 0) {
const ca_file_name_ = try bun.default_allocator.dupeZ(u8, sliced.slice());
result.ca_file_name = ca_file_name_;
if (bun.sys.existsAtType(ca_file_name_).unwrapOr(.directory) != .file) {
return global.throwInvalidArguments("Invalid caFile path", .{});
}
}
@@ -581,7 +584,7 @@ pub fn fromJS(vm: *JSC.VirtualMachine, global: *JSC.JSGlobalObject, obj: JSC.JSV
defer sliced.deinit();
if (sliced.len > 0) {
result.dh_params_file_name = try bun.default_allocator.dupeZ(u8, sliced.slice());
if (std.posix.system.access(result.dh_params_file_name, std.posix.F_OK) != 0) {
if (bun.sys.existsAtType(result.dh_params_file_name).unwrapOr(.directory) != .file) {
return global.throwInvalidArguments("Invalid dhParamsFile path", .{});
}
}

View File

@@ -357,10 +357,7 @@ pub fn NewHotReloader(comptime Ctx: type, comptime EventLoopType: type, comptime
for (parents, 0..) |parent_hash, entry_id| {
if (parent_hash == current_hash) {
const affected_path = file_paths[entry_id];
const was_deleted = check: {
std.posix.access(affected_path, std.posix.F_OK) catch break :check true;
break :check false;
};
const was_deleted = !bun.sys.exists(affected_path);
if (!was_deleted) continue;
affected_buf[affected_i] = affected_path[file_path.len..];

View File

@@ -655,7 +655,7 @@ pub const UpgradeCommand = struct {
defer save_dir_.deleteTree(version_name) catch {};
if (err == error.FileNotFound) {
if (std.fs.cwd().access(exe, .{})) {
if (!bun.sys.exists(exe)) {
// On systems like NixOS, the FileNotFound is actually the system-wide linker,
// as they do not have one (most systems have it at a known path). This is how
// ChildProcess returns FileNotFound despite the actual
@@ -674,7 +674,7 @@ pub const UpgradeCommand = struct {
, .{});
Global.exit(1);
return;
} else |_| {}
}
}
Output.prettyErrorln("<r><red>error<r><d>:<r> Failed to verify Bun (code: {s})<r>)", .{@errorName(err)});