diff options
| author | LeRoyce Pearson <leroycepearson@geemili.xyz> | 2020-03-23 22:34:00 -0600 |
|---|---|---|
| committer | LeRoyce Pearson <leroycepearson@geemili.xyz> | 2020-03-23 22:34:00 -0600 |
| commit | 8bec1304c35585ceacfbda3696d8af854c7ab08a (patch) | |
| tree | 9b2eb09c7f922e87b9fe436be73999aa715514f5 /lib/std | |
| parent | 113b217593ab5b0369b76251b99a195f361cc220 (diff) | |
| download | zig-8bec1304c35585ceacfbda3696d8af854c7ab08a.tar.gz zig-8bec1304c35585ceacfbda3696d8af854c7ab08a.zip | |
Fix compile error on windows
Diffstat (limited to 'lib/std')
| -rw-r--r-- | lib/std/os.zig | 2 | ||||
| -rw-r--r-- | lib/std/os/windows.zig | 4 |
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, |
