[PATCH] user32: Don't read preparsed data on non-HID devices.

Rémi Bernon rbernon at codeweavers.com
Mon Apr 27 07:36:03 CDT 2020


Signed-off-by: Rémi Bernon <rbernon at codeweavers.com>
---

This should fix a segfault in user32 input test introduced with:

  19c6524e48db1d785095953d25591f1e2d2872d9

 dlls/user32/rawinput.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/dlls/user32/rawinput.c b/dlls/user32/rawinput.c
index 2465262f74ed..dd2ac2e208b2 100644
--- a/dlls/user32/rawinput.c
+++ b/dlls/user32/rawinput.c
@@ -492,7 +492,8 @@ UINT WINAPI GetRawInputDeviceInfoW(HANDLE handle, UINT command, void *data, UINT
 
     case RIDI_PREPARSEDDATA:
         avail_bytes = *data_size;
-        if (handle == WINE_MOUSE_HANDLE || handle == WINE_KEYBOARD_HANDLE)
+        if (handle == WINE_MOUSE_HANDLE || handle == WINE_KEYBOARD_HANDLE ||
+            device->info.dwType != RIM_TYPEHID)
         {
             to_copy_bytes = 0;
             *data_size = 0;
-- 
2.26.1




More information about the wine-devel mailing list