dinput: Properly debug DIDEVTYPE_HID in _dump_DIDEVCAPS

Bruno Jesus 00cpxxx at gmail.com
Wed Aug 17 23:41:46 CDT 2016


It is impossible for the case to match because it is filtered to
LOBYTE [1] while DIDEVTYPE_HID is 0x010000.

[1] https://source.winehq.org/source/dlls/dinput/joystick.c#0408

Signed-off-by: Bruno Jesus <00cpxxx at gmail.com>
-------------- next part --------------
diff --git a/dlls/dinput/joystick.c b/dlls/dinput/joystick.c
index 1c4b436..de76896 100644
--- a/dlls/dinput/joystick.c
+++ b/dlls/dinput/joystick.c
@@ -406,7 +406,7 @@ HRESULT WINAPI JoystickAGenericImpl_SetProperty(LPDIRECTINPUTDEVICE8A iface, REF
 void _dump_DIDEVCAPS(const DIDEVCAPS *lpDIDevCaps)
 {
     int type = GET_DIDEVICE_TYPE(lpDIDevCaps->dwDevType);
-    const char *str;
+    const char *str, *hid = "";
     TRACE("dwSize: %d\n", lpDIDevCaps->dwSize);
     TRACE("dwFlags: %08x\n", lpDIDevCaps->dwFlags);
     switch(type)
@@ -416,7 +416,6 @@ void _dump_DIDEVCAPS(const DIDEVCAPS *lpDIDevCaps)
         DEBUG_TYPE(DIDEVTYPE_MOUSE);
         DEBUG_TYPE(DIDEVTYPE_KEYBOARD);
         DEBUG_TYPE(DIDEVTYPE_JOYSTICK);
-        DEBUG_TYPE(DIDEVTYPE_HID);
         /* Direct X >= 8 definitions */
         DEBUG_TYPE(DI8DEVTYPE_DEVICE);
         DEBUG_TYPE(DI8DEVTYPE_MOUSE);
@@ -433,7 +432,10 @@ void _dump_DIDEVCAPS(const DIDEVCAPS *lpDIDevCaps)
         default: str = "UNKNOWN";
     }
 
-    TRACE("dwDevType: %08x %s\n", lpDIDevCaps->dwDevType, str);
+    if (lpDIDevCaps->dwDevType & DIDEVTYPE_HID)
+        hid = " (HID)";
+
+    TRACE("dwDevType: %08x %s%s\n", lpDIDevCaps->dwDevType, str, hid);
     TRACE("dwAxes: %d\n", lpDIDevCaps->dwAxes);
     TRACE("dwButtons: %d\n", lpDIDevCaps->dwButtons);
     TRACE("dwPOVs: %d\n", lpDIDevCaps->dwPOVs);


More information about the wine-patches mailing list