winex11.drv: make sure GetKeyNameText gets the correct length to return

Austin English austinenglish at gmail.com
Fri Jun 26 03:55:12 CDT 2009


Fixes regression in bug 19069.

Side note: added a regression test for it in Appinstall:
http://code.google.com/p/winezeug/source/detail?r=526

-- 
-Austin
-------------- next part --------------
diff --git a/dlls/winex11.drv/keyboard.c b/dlls/winex11.drv/keyboard.c
index 8a6dd37..9639de1 100644
--- a/dlls/winex11.drv/keyboard.c
+++ b/dlls/winex11.drv/keyboard.c
@@ -2350,7 +2350,7 @@ INT CDECL X11DRV_GetKeyNameText(LONG lParam, LPWSTR lpBuffer, INT nSize)
             scanCode, keyc, (int)keys, name);
       if (lpBuffer && nSize && name)
       {
-          MultiByteToWideChar(CP_UNIXCP, 0, name, -1, lpBuffer, nSize);
+          nSize = MultiByteToWideChar(CP_UNIXCP, 0, name, -1, lpBuffer, nSize);
           lpBuffer[nSize - 1] = 0;
           return nSize;
       }


More information about the wine-patches mailing list