--- keyboard.old 2008-11-27 16:53:15.000000000 +0100 +++ keyboard.c 2008-11-26 21:19:01.000000000 +0100 @@ -2328,11 +2328,7 @@ TRACE("found scan=%04x keyc=%04x keysym=%04x string=%s\n", scanCode, keyc, (int)keys, name); if (lpBuffer && nSize && name) - { - MultiByteToWideChar(CP_UNIXCP, 0, name, -1, lpBuffer, nSize); - lpBuffer[nSize - 1] = 0; - return 1; - } + return MultiByteToWideChar(CP_UNIXCP, 0, name, -1, lpBuffer, nSize) - 1; } /* Finally issue WARN for unknown keys */