fix dup syscall on Windows (#4496)

This commit is contained in:
Jason
2023-09-05 16:33:30 +08:00
committed by GitHub
parent f73f77d0de
commit a85bd5d083
2 changed files with 4 additions and 3 deletions

View File

@@ -1311,13 +1311,13 @@ pub fn setFileOffset(fd: bun.FileDescriptor, offset: usize) Maybe(void) {
pub fn dup(fd: bun.FileDescriptor) Maybe(bun.FileDescriptor) {
if (comptime Environment.isWindows) {
var target: *windows.HANDLE = undefined;
var target: windows.HANDLE = undefined;
const process = kernel32.GetCurrentProcess();
const out = kernel32.DuplicateHandle(
process,
bun.fdcast(fd),
process,
target,
&target,
0,
w.TRUE,
w.DUPLICATE_SAME_ACCESS,
@@ -1327,7 +1327,7 @@ pub fn dup(fd: bun.FileDescriptor) Maybe(bun.FileDescriptor) {
return err;
}
}
return Maybe(bun.FileDescriptor){ .result = bun.toFD(out) };
return Maybe(bun.FileDescriptor){ .result = bun.toFD(target.*) };
}
const out = std.c.dup(fd);

1
src/deps/uws Submodule

Submodule src/deps/uws added at 8b4206edb9