aboutsummaryrefslogtreecommitdiff
path: root/lib/std
diff options
context:
space:
mode:
authorLeRoyce Pearson <leroycepearson@geemili.xyz>2020-03-23 22:34:00 -0600
committerLeRoyce Pearson <leroycepearson@geemili.xyz>2020-03-23 22:34:00 -0600
commit8bec1304c35585ceacfbda3696d8af854c7ab08a (patch)
tree9b2eb09c7f922e87b9fe436be73999aa715514f5 /lib/std
parent113b217593ab5b0369b76251b99a195f361cc220 (diff)
downloadzig-8bec1304c35585ceacfbda3696d8af854c7ab08a.tar.gz
zig-8bec1304c35585ceacfbda3696d8af854c7ab08a.zip
Fix compile error on windows
Diffstat (limited to 'lib/std')
-rw-r--r--lib/std/os.zig2
-rw-r--r--lib/std/os/windows.zig4
2 files changed, 4 insertions, 2 deletions
diff --git a/lib/std/os.zig b/lib/std/os.zig
index 2dec2c4c1d..846943b050 100644
--- a/lib/std/os.zig
+++ b/lib/std/os.zig
@@ -1651,7 +1651,7 @@ pub fn renameatW(
ReplaceIfExists: windows.BOOLEAN,
) RenameError!void {
const access_mask = windows.SYNCHRONIZE | windows.GENERIC_WRITE | windows.DELETE;
- const src_fd = try windows.OpenFileW(old_dir_fd, old_path, null, access_mask, windows.FILE_OPEN);
+ const src_fd = try windows.OpenFileW(old_dir_fd, old_path, null, access_mask, null, windows.FILE_OPEN);
defer windows.CloseHandle(src_fd);
const struct_buf_len = @sizeOf(windows.FILE_RENAME_INFORMATION) + (MAX_PATH_BYTES - 1);
diff --git a/lib/std/os/windows.zig b/lib/std/os/windows.zig
index 813a77c275..a2082b2deb 100644
--- a/lib/std/os/windows.zig
+++ b/lib/std/os/windows.zig
@@ -107,6 +107,7 @@ pub fn OpenFileW(
sub_path_w: [*:0]const u16,
sa: ?*SECURITY_ATTRIBUTES,
access_mask: ACCESS_MASK,
+ share_access_opt: ?ULONG,
creation: ULONG,
) OpenError!HANDLE {
if (sub_path_w[0] == '.' and sub_path_w[1] == 0) {
@@ -135,6 +136,7 @@ pub fn OpenFileW(
.SecurityQualityOfService = null,
};
var io: IO_STATUS_BLOCK = undefined;
+ const share_access = share_access_opt orelse FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE;
const rc = ntdll.NtCreateFile(
&result,
access_mask,
@@ -142,7 +144,7 @@ pub fn OpenFileW(
&io,
null,
FILE_ATTRIBUTE_NORMAL,
- FILE_SHARE_WRITE | FILE_SHARE_READ | FILE_SHARE_DELETE,
+ share_access,
creation,
FILE_NON_DIRECTORY_FILE | FILE_SYNCHRONOUS_IO_NONALERT,
null,