Skip to content

Commit 1f2fbec

Browse files
authored
Rollup merge of rust-lang#121633 - ChrisDenton:precise, r=Nilstrieb
Win10: Use `GetSystemTimePreciseAsFileTime` directly On Windows 10 we can use `GetSystemTimePreciseAsFileTime` directly instead of lazy loading it (with a fallback).
2 parents 2caf3f7 + a23102d commit 1f2fbec

File tree

3 files changed

+6
-0
lines changed

3 files changed

+6
-0
lines changed

std/src/sys/pal/windows/c.rs

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -344,6 +344,7 @@ compat_fn_with_fallback! {
344344

345345
// >= Win8 / Server 2012
346346
// https://docs.microsoft.com/en-us/windows/win32/api/sysinfoapi/nf-sysinfoapi-getsystemtimepreciseasfiletime
347+
#[cfg(target_vendor = "win7")]
347348
pub fn GetSystemTimePreciseAsFileTime(lpsystemtimeasfiletime: *mut FILETIME) -> () {
348349
GetSystemTimeAsFileTime(lpsystemtimeasfiletime)
349350
}

std/src/sys/pal/windows/c/bindings.txt

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2476,6 +2476,7 @@ Windows.Win32.System.Pipes.PIPE_WAIT
24762476
Windows.Win32.System.SystemInformation.GetSystemDirectoryW
24772477
Windows.Win32.System.SystemInformation.GetSystemInfo
24782478
Windows.Win32.System.SystemInformation.GetSystemTimeAsFileTime
2479+
Windows.Win32.System.SystemInformation.GetSystemTimePreciseAsFileTime
24792480
Windows.Win32.System.SystemInformation.GetWindowsDirectoryW
24802481
Windows.Win32.System.SystemInformation.PROCESSOR_ARCHITECTURE
24812482
Windows.Win32.System.SystemInformation.SYSTEM_INFO

std/src/sys/pal/windows/c/windows_sys.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -345,6 +345,10 @@ extern "system" {
345345
pub fn GetSystemTimeAsFileTime(lpsystemtimeasfiletime: *mut FILETIME) -> ();
346346
}
347347
#[link(name = "kernel32")]
348+
extern "system" {
349+
pub fn GetSystemTimePreciseAsFileTime(lpsystemtimeasfiletime: *mut FILETIME) -> ();
350+
}
351+
#[link(name = "kernel32")]
348352
extern "system" {
349353
pub fn GetTempPathW(nbufferlength: u32, lpbuffer: PWSTR) -> u32;
350354
}

0 commit comments

Comments
 (0)