static char_u *exe_path = NULL;
+static BOOL win8_or_later = FALSE;
+
/*
* Version of ReadConsoleInput() that works with IME.
* Works around problems on Windows 8.
static DWORD s_dwMax = 0;
DWORD dwEvents;
+ if (!win8_or_later)
+ {
+ if (nLength == -1)
+ return PeekConsoleInput(hInput, lpBuffer, 1, lpEvents);
+ return ReadConsoleInput(hInput, lpBuffer, 1, &dwEvents);
+ }
+
if (s_dwMax == 0)
{
if (nLength == -1)
g_PlatformId = ovi.dwPlatformId;
+ if ((ovi.dwMajorVersion == 6 && ovi.dwMinorVersion >= 2)
+ || ovi.dwMajorVersion > 6)
+ win8_or_later = TRUE;
+
#ifdef HAVE_ACL
/*
* Load the ADVAPI runtime if we are on anything