commit 13dc34f779786ba39509014ebb9f4a5152cf2608 (tree)
parent 610ce544d51ab0bc80c1882e4b923eda9bc0126c
Author: viri <hi@viri.moe>
Date: Sun, 6 Jun 2021 20:26:08 -0600
std.Progress: use `*W` functions on windows
Closes #534.
See: https://source.winehq.org/git/wine.git/blob/refs/heads/stable:/dlls/kernelbase/console.c#l520
Diffstat:
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/lib/std/Progress.zig b/lib/std/Progress.zig
@@ -234,7 +234,7 @@ fn refreshWithHeldLock(self: *Progress) void {
self.terminal = null;
break :winapi;
}
- if (windows.kernel32.FillConsoleOutputCharacterA(
+ if (windows.kernel32.FillConsoleOutputCharacterW(
file.handle,
' ',
fill_chars,
diff --git a/lib/std/os/windows/kernel32.zig b/lib/std/os/windows/kernel32.zig
@@ -90,6 +90,7 @@ pub extern "kernel32" fn GetConsoleMode(in_hConsoleHandle: HANDLE, out_lpMode: *
pub extern "kernel32" fn GetConsoleScreenBufferInfo(hConsoleOutput: HANDLE, lpConsoleScreenBufferInfo: *CONSOLE_SCREEN_BUFFER_INFO) callconv(WINAPI) BOOL;
pub extern "kernel32" fn FillConsoleOutputCharacterA(hConsoleOutput: HANDLE, cCharacter: CHAR, nLength: DWORD, dwWriteCoord: COORD, lpNumberOfCharsWritten: LPDWORD) callconv(WINAPI) BOOL;
+pub extern "kernel32" fn FillConsoleOutputCharacterW(hConsoleOutput: HANDLE, cCharacter: WCHAR, nLength: DWORD, dwWriteCoord: COORD, lpNumberOfCharsWritten: LPDWORD) callconv(WINAPI) BOOL;
pub extern "kernel32" fn FillConsoleOutputAttribute(hConsoleOutput: HANDLE, wAttribute: WORD, nLength: DWORD, dwWriteCoord: COORD, lpNumberOfAttrsWritten: LPDWORD) callconv(WINAPI) BOOL;
pub extern "kernel32" fn SetConsoleCursorPosition(hConsoleOutput: HANDLE, dwCursorPosition: COORD) callconv(WINAPI) BOOL;