[PATCH 3/6] user32: Retrieve the usage page and usage directly from the hid_preparsed_data structure.

Zebediah Figura wine at gitlab.winehq.org
Wed May 25 14:35:47 CDT 2022


From: Zebediah Figura <zfigura at codeweavers.com>

Signed-off-by: Zebediah Figura <zfigura at codeweavers.com>
---
 dlls/user32/rawinput.c | 13 ++++---------
 1 file changed, 4 insertions(+), 9 deletions(-)

diff --git a/dlls/user32/rawinput.c b/dlls/user32/rawinput.c
index 08c2601181d..34197701c24 100644
--- a/dlls/user32/rawinput.c
+++ b/dlls/user32/rawinput.c
@@ -148,8 +148,8 @@ static struct device *add_device( HDEVINFO set, SP_DEVICE_INTERFACE_DATA *iface,
     {
         case RIM_TYPEHID:
         {
+            const struct hid_preparsed_data *preparsed;
             HIDD_ATTRIBUTES attr;
-            HIDP_CAPS caps;
 
             attr.Size = sizeof(HIDD_ATTRIBUTES);
             if (!HidD_GetAttributes( device->file, &attr ))
@@ -167,15 +167,10 @@ static struct device *add_device( HDEVINFO set, SP_DEVICE_INTERFACE_DATA *iface,
                 ERR( "Failed to get preparsed data.\n" );
                 goto fail;
             }
+            preparsed = (struct hid_preparsed_data *)preparsed_data;
 
-            if (!HidP_GetCaps( preparsed_data, &caps ))
-            {
-                ERR( "Failed to get caps.\n" );
-                goto fail;
-            }
-
-            info.hid.usUsagePage = caps.UsagePage;
-            info.hid.usUsage = caps.Usage;
+            info.hid.usUsagePage = preparsed->usage_page;
+            info.hid.usUsage = preparsed->usage;
             break;
         }
 
-- 
GitLab


https://gitlab.winehq.org/wine/wine/-/merge_requests/130



More information about the wine-devel mailing list