Skip to content

Commit

Permalink
fix create with github URL on windows (#10231)
Browse files Browse the repository at this point in the history
* correctly ignore error on windows to match posix behavior

* replace zig accessat with bun.sys.existsAt

* fix posix build
  • Loading branch information
gvilums committed Apr 13, 2024
1 parent 472bd6c commit 1820d08
Show file tree
Hide file tree
Showing 2 changed files with 10 additions and 4 deletions.
12 changes: 9 additions & 3 deletions src/cli/create_command.zig
Original file line number Diff line number Diff line change
Expand Up @@ -1611,7 +1611,9 @@ pub const CreateCommand = struct {
const outdir_path = filesystem.absBuf(&parts, &home_dir_buf);
home_dir_buf[outdir_path.len] = 0;
const outdir_path_ = home_dir_buf[0..outdir_path.len :0];
std.fs.accessAbsoluteZ(outdir_path_, .{}) catch break :outer;
if (!bun.sys.existsAt(bun.invalid_fd, outdir_path_)) {
break :outer;
}
example_tag = Example.Tag.local_folder;
break :brk outdir_path;
}
Expand All @@ -1622,7 +1624,9 @@ pub const CreateCommand = struct {
const outdir_path = filesystem.absBuf(&parts, &home_dir_buf);
home_dir_buf[outdir_path.len] = 0;
const outdir_path_ = home_dir_buf[0..outdir_path.len :0];
std.fs.accessAbsoluteZ(outdir_path_, .{}) catch break :outer;
if (!bun.sys.existsAt(bun.invalid_fd, outdir_path_)) {
break :outer;
}
example_tag = Example.Tag.local_folder;
break :brk outdir_path;
}
Expand All @@ -1633,7 +1637,9 @@ pub const CreateCommand = struct {
const outdir_path = filesystem.absBuf(&parts, &home_dir_buf);
home_dir_buf[outdir_path.len] = 0;
const outdir_path_ = home_dir_buf[0..outdir_path.len :0];
std.fs.accessAbsoluteZ(outdir_path_, .{}) catch break :outer;
if (!bun.sys.existsAt(bun.invalid_fd, outdir_path_)) {
break :outer;
}
example_tag = Example.Tag.local_folder;
break :brk outdir_path;
}
Expand Down
2 changes: 1 addition & 1 deletion src/sys.zig
Original file line number Diff line number Diff line change
Expand Up @@ -2120,7 +2120,7 @@ pub fn exists(path: []const u8) bool {

pub fn existsAt(fd: bun.FileDescriptor, subpath: []const u8) bool {
if (comptime Environment.isPosix) {
return system.faccessat(bun.toFD(fd), &(std.os.toPosixPath(subpath) catch return false), 0, 0) == 0;
return system.faccessat(fd.cast(), &(std.os.toPosixPath(subpath) catch return false), 0, 0) == 0;
}

if (comptime Environment.isWindows) {
Expand Down

0 comments on commit 1820d08

Please sign in to comment.