Alistair Leslie-Hughes : dinput: Ensure buffer doesn't overflow (Coverity) .

Alexandre Julliard julliard at winehq.org
Mon Jun 17 15:54:21 CDT 2019


Module: wine
Branch: master
Commit: 55edfc8837a26ced87964014c6e62e1be7dcc5e3
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=55edfc8837a26ced87964014c6e62e1be7dcc5e3

Author: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Date:   Sun Jun 16 06:50:02 2019 +0000

dinput: Ensure buffer doesn't overflow (Coverity).

Signed-off-by: Alistair Leslie-Hughes <leslie_alistair at hotmail.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>

---

 dlls/dinput/joystick.c            | 2 +-
 dlls/dinput/joystick_linuxinput.c | 4 ++--
 2 files changed, 3 insertions(+), 3 deletions(-)

diff --git a/dlls/dinput/joystick.c b/dlls/dinput/joystick.c
index 433348c..a5308b6 100644
--- a/dlls/dinput/joystick.c
+++ b/dlls/dinput/joystick.c
@@ -700,7 +700,7 @@ HRESULT WINAPI JoystickAGenericImpl_GetDeviceInfo(
     /* we only support traditional joysticks for now */
     pdidi->dwDevType = This->devcaps.dwDevType;
     snprintf(pdidi->tszInstanceName, MAX_PATH, "Joystick %d", index);
-    strcpy(pdidi->tszProductName, This->name);
+    lstrcpynA(pdidi->tszProductName, This->name, MAX_PATH);
     if (pdidi->dwSize > sizeof(DIDEVICEINSTANCE_DX3A)) {
         pdidi->guidFFDriver = GUID_NULL;
         pdidi->wUsagePage = 0;
diff --git a/dlls/dinput/joystick_linuxinput.c b/dlls/dinput/joystick_linuxinput.c
index e3371b9..1e8c542 100644
--- a/dlls/dinput/joystick_linuxinput.c
+++ b/dlls/dinput/joystick_linuxinput.c
@@ -411,8 +411,8 @@ static void fill_joystick_dideviceinstanceA(LPDIDEVICEINSTANCEA lpddi, DWORD ver
     lpddi->guidInstance = lpddiW.guidInstance;
     lpddi->guidProduct = lpddiW.guidProduct;
     lpddi->dwDevType = lpddiW.dwDevType;
-    strcpy(lpddi->tszInstanceName, joydevs[id].name);
-    strcpy(lpddi->tszProductName,  joydevs[id].name);
+    lstrcpynA(lpddi->tszInstanceName, joydevs[id].name, MAX_PATH);
+    lstrcpynA(lpddi->tszProductName,  joydevs[id].name, MAX_PATH);
     lpddi->guidFFDriver = lpddiW.guidFFDriver;
     lpddi->wUsagePage = lpddiW.wUsagePage;
     lpddi->wUsage = lpddiW.wUsage;




More information about the wine-cvs mailing list