From 9f0dc2601ed5961e739a754b9ad7d194703cc4a1 Mon Sep 17 00:00:00 2001 From: Bert Belder Date: Wed, 25 Apr 2012 00:19:01 +0200 Subject: [PATCH] Windows: fetch pointer for CancelIoEx on startup --- src/win/winapi.c | 4 ++++ src/win/winapi.h | 5 +++++ 2 files changed, 9 insertions(+) diff --git a/src/win/winapi.c b/src/win/winapi.c index ff6912d0..a474c92a 100644 --- a/src/win/winapi.c +++ b/src/win/winapi.c @@ -33,6 +33,7 @@ sNtSetInformationFile pNtSetInformationFile; sGetQueuedCompletionStatusEx pGetQueuedCompletionStatusEx; sSetFileCompletionNotificationModes pSetFileCompletionNotificationModes; sCreateSymbolicLinkW pCreateSymbolicLinkW; +sCancelIoEx pCancelIoEx; sInitializeSRWLock pInitializeSRWLock; sAcquireSRWLockShared pAcquireSRWLockShared; sAcquireSRWLockExclusive pAcquireSRWLockExclusive; @@ -94,6 +95,9 @@ void uv_winapi_init() { pCreateSymbolicLinkW = (sCreateSymbolicLinkW) GetProcAddress(kernel32_module, "CreateSymbolicLinkW"); + pCancelIoEx = (sCancelIoEx) + GetProcAddress(kernel32_module, "CancelIoEx"); + pInitializeSRWLock = (sInitializeSRWLock) GetProcAddress(kernel32_module, "InitializeSRWLock"); diff --git a/src/win/winapi.h b/src/win/winapi.h index b79ff4c2..4b1a249f 100644 --- a/src/win/winapi.h +++ b/src/win/winapi.h @@ -4378,6 +4378,10 @@ typedef BOOLEAN (WINAPI* sCreateSymbolicLinkW) LPCWSTR lpTargetFileName, DWORD dwFlags); +typedef BOOL (WINAPI* sCancelIoEx) + (HANDLE hFile, + LPOVERLAPPED lpOverlapped); + typedef VOID (WINAPI* sInitializeSRWLock) (PSRWLOCK SRWLock); @@ -4412,6 +4416,7 @@ extern sNtSetInformationFile pNtSetInformationFile; extern sGetQueuedCompletionStatusEx pGetQueuedCompletionStatusEx; extern sSetFileCompletionNotificationModes pSetFileCompletionNotificationModes; extern sCreateSymbolicLinkW pCreateSymbolicLinkW; +extern sCancelIoEx pCancelIoEx; extern sInitializeSRWLock pInitializeSRWLock; extern sAcquireSRWLockShared pAcquireSRWLockShared; extern sAcquireSRWLockExclusive pAcquireSRWLockExclusive;