zig/lib/std/os/windows
Ryan Liptak 3f9294c735 Windows: Fix TooManyParentDirs handling for paths that shouldn't be cwd-relative
Previously, a relative path like `..` would:
- Attempt to be normalized (i.e. remove . and .. without any path resolution), but would error with TooManyParentDirs
- This would make wToPrefixedFileW run it through `RtlGetFullPathName_U` to do the necessary path resolution, but `RtlGetFullPathName_U` always resolves relative paths relative to the CWD

Instead, when TooManyParentDirs occurs, we now look up the path of the passed in `dir` (if it's non-null) and append the relative path to it before giving it to `RtlGetFullPathName_U`. If `dir` is null, then we just give it RtlGetFullPathName_U directly and let it resolve it relative to the CWD.

Closes #16779
2023-08-11 18:58:40 -07:00
..
advapi32.zig std.os.windows.advapi32: add RegLoadAppKeyW 2023-07-23 17:10:57 +06:00
crypt32.zig clean up windows cert scanning 2023-01-17 00:08:42 -07:00
gdi32.zig
kernel32.zig Fix GetFileInformationByHandle compile error (#14829) 2023-03-19 23:23:05 +00:00
lang.zig
nls.zig Add os.windows.nls.upcaseW, a cross-platform implementation of RtlUpcaseUnicodeChar 2023-06-30 15:29:43 -07:00
ntdll.zig debug: fix reading -gdwarf generated debug sections in COFF files 2023-07-20 22:58:14 -04:00
ntstatus.zig
ole32.zig windows_sdk.zig: Reinstate COM ISetupEnumInstances logic 2023-07-28 19:19:32 -07:00
psapi.zig
shell32.zig
sublang.zig
test.zig Windows: Fix TooManyParentDirs handling for paths that shouldn't be cwd-relative 2023-08-11 18:58:40 -07:00
user32.zig Use builtin inference over @as where possible 2023-07-24 10:23:51 -07:00
win32error.zig
winmm.zig
ws2_32.zig all: migrate code to new cast builtin syntax 2023-06-24 16:56:39 -07:00