From d7579a2fcb0edaa1f6036101d00316abccac0c7e Mon Sep 17 00:00:00 2001 From: Ryan Liptak Date: Tue, 3 Mar 2020 00:03:19 -0800 Subject: Fix std.os.unlinkatW for absolute paths RootDirectory can't be set in ObjectAttributes if ObjectName is an absolute path. Fixes #4606 --- lib/std/os.zig | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'lib/std/os.zig') diff --git a/lib/std/os.zig b/lib/std/os.zig index 127ada8fe5..fbfef4ac4c 100644 --- a/lib/std/os.zig +++ b/lib/std/os.zig @@ -1438,7 +1438,7 @@ pub fn unlinkatW(dirfd: fd_t, sub_path_w: [*:0]const u16, flags: u32) UnlinkatEr var attr = w.OBJECT_ATTRIBUTES{ .Length = @sizeOf(w.OBJECT_ATTRIBUTES), - .RootDirectory = dirfd, + .RootDirectory = if (std.fs.path.isAbsoluteWindowsW(sub_path_w)) null else dirfd, .Attributes = 0, // Note we do not use OBJ_CASE_INSENSITIVE here. .ObjectName = &nt_name, .SecurityDescriptor = null, -- cgit v1.2.3