From b4743ccd8fdb577670d16ffdd6b3ad2132fa3fea Mon Sep 17 00:00:00 2001 From: Nathan Letwory Date: Fri, 18 Mar 2011 13:36:52 +0000 Subject: [PATCH] Fix for crasher on Win XP, submitted by Kanttori. size is 32 on XP, while sizeof(ri) gives 40. Pick the smaller one to pass to memcpy to prevent crashes. --- intern/ghost/intern/GHOST_SystemWin32.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/intern/ghost/intern/GHOST_SystemWin32.cpp b/intern/ghost/intern/GHOST_SystemWin32.cpp index e815430da7a..db6956de740 100644 --- a/intern/ghost/intern/GHOST_SystemWin32.cpp +++ b/intern/ghost/intern/GHOST_SystemWin32.cpp @@ -450,7 +450,7 @@ GHOST_TKey GHOST_SystemWin32::hardKey(GHOST_IWindow *window, WPARAM wParam, LPAR GetRawInputData((HRAWINPUT)lParam, RID_INPUT, data, &size, sizeof(RAWINPUTHEADER))) { RAWINPUT ri; - memcpy(&ri,data,sizeof(ri)); + memcpy(&ri,data,(size < sizeof(ri)) ? size : sizeof(ri)); if (ri.header.dwType == RIM_TYPEKEYBOARD) {