Brendan McGrath : dinput: Use the same GUID for Instance and Product.

Alexandre Julliard julliard at winehq.org
Sun Mar 3 13:21:29 CST 2019


Module: wine
Branch: oldstable
Commit: 6a8bb514e29c25f81f0147d444728b3d6375de13
URL:    https://source.winehq.org/git/wine.git/?a=commit;h=6a8bb514e29c25f81f0147d444728b3d6375de13

Author: Brendan McGrath <brendan at redmandi.com>
Date:   Wed Oct 31 21:01:41 2018 +1100

dinput: Use the same GUID for Instance and Product.

Signed-off-by: Brendan McGrath <brendan at redmandi.com>
Signed-off-by: Alexandre Julliard <julliard at winehq.org>
(cherry picked from commit 3a2834b3a42e869b7d450074c29cd7089bfef015)
Signed-off-by: Michael Stefaniuc <mstefani at winehq.org>

---

 dlls/dinput/device_private.h |  3 ---
 dlls/dinput/dinput_main.c    |  6 ++----
 dlls/dinput/keyboard.c       | 11 +++--------
 dlls/dinput/mouse.c          | 11 +++--------
 dlls/dinput/tests/dinput.c   |  1 -
 dlls/dinput8/tests/dinput.c  |  1 -
 6 files changed, 8 insertions(+), 25 deletions(-)

diff --git a/dlls/dinput/device_private.h b/dlls/dinput/device_private.h
index 52bbec4..d9e2997 100644
--- a/dlls/dinput/device_private.h
+++ b/dlls/dinput/device_private.h
@@ -114,9 +114,6 @@ typedef struct
     LPDIRECTINPUTEFFECT ref;
 } effect_list_item;
 
-extern const GUID DInput_Wine_Keyboard_GUID DECLSPEC_HIDDEN;
-extern const GUID DInput_Wine_Mouse_GUID DECLSPEC_HIDDEN;
-
 /* Various debug tools */
 extern void _dump_DIPROPHEADER(LPCDIPROPHEADER diph)  DECLSPEC_HIDDEN;
 extern void _dump_OBJECTINSTANCEA(const DIDEVICEOBJECTINSTANCEA *ddoi)  DECLSPEC_HIDDEN;
diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
index a592174..d137935 100644
--- a/dlls/dinput/dinput_main.c
+++ b/dlls/dinput/dinput_main.c
@@ -1688,12 +1688,10 @@ static DWORD WINAPI hook_thread_proc(void *param)
                 {
                     if (!dev->acquired || !dev->event_proc) continue;
 
-                    if (IsEqualGUID( &dev->guid, &GUID_SysKeyboard ) ||
-                        IsEqualGUID( &dev->guid, &DInput_Wine_Keyboard_GUID ))
+                    if (IsEqualGUID( &dev->guid, &GUID_SysKeyboard ))
                         kbd_cnt++;
                     else
-                        if (IsEqualGUID( &dev->guid, &GUID_SysMouse ) ||
-                            IsEqualGUID( &dev->guid, &DInput_Wine_Mouse_GUID ))
+                        if (IsEqualGUID( &dev->guid, &GUID_SysMouse ))
                             mice_cnt++;
                 }
                 LeaveCriticalSection( &dinput->crit );
diff --git a/dlls/dinput/keyboard.c b/dlls/dinput/keyboard.c
index d213368..5d21fde 100644
--- a/dlls/dinput/keyboard.c
+++ b/dlls/dinput/keyboard.c
@@ -117,10 +117,6 @@ static int KeyboardCallback( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM
     return ret;
 }
 
-const GUID DInput_Wine_Keyboard_GUID = { /* 0ab8648a-7735-11d2-8c73-71df54a96441 */
-    0x0ab8648a, 0x7735, 0x11d2, {0x8c, 0x73, 0x71, 0xdf, 0x54, 0xa9, 0x64, 0x41}
-};
-
 static DWORD get_keyboard_subtype(void)
 {
     DWORD kbd_type, kbd_subtype, dev_subtype;
@@ -151,7 +147,7 @@ static void fill_keyboard_dideviceinstanceA(LPDIDEVICEINSTANCEA lpddi, DWORD ver
 
     ddi.dwSize = dwSize;
     ddi.guidInstance = GUID_SysKeyboard;/* DInput's GUID */
-    ddi.guidProduct = DInput_Wine_Keyboard_GUID; /* Vendor's GUID */
+    ddi.guidProduct = GUID_SysKeyboard;
     if (version >= 0x0800)
         ddi.dwDevType = DI8DEVTYPE_KEYBOARD | (subtype << 8);
     else
@@ -175,7 +171,7 @@ static void fill_keyboard_dideviceinstanceW(LPDIDEVICEINSTANCEW lpddi, DWORD ver
  
     ddi.dwSize = dwSize;
     ddi.guidInstance = GUID_SysKeyboard;/* DInput's GUID */
-    ddi.guidProduct = DInput_Wine_Keyboard_GUID; /* Vendor's GUID */
+    ddi.guidProduct = GUID_SysKeyboard;
     if (version >= 0x0800)
         ddi.dwDevType = DI8DEVTYPE_KEYBOARD | (subtype << 8);
     else
@@ -278,8 +274,7 @@ static HRESULT keyboarddev_create_device(IDirectInputImpl *dinput, REFGUID rguid
     TRACE("%p %s %s %p %i\n", dinput, debugstr_guid(rguid), debugstr_guid(riid), pdev, unicode);
     *pdev = NULL;
 
-    if (IsEqualGUID(&GUID_SysKeyboard, rguid) ||        /* Generic Keyboard */
-        IsEqualGUID(&DInput_Wine_Keyboard_GUID, rguid)) /* Wine Keyboard */
+    if (IsEqualGUID(&GUID_SysKeyboard, rguid)) /* Wine Keyboard */
     {
         SysKeyboardImpl *This;
 
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
index 6d3eff5..7133359 100644
--- a/dlls/dinput/mouse.c
+++ b/dlls/dinput/mouse.c
@@ -93,10 +93,6 @@ static inline IDirectInputDevice8W *IDirectInputDevice8W_from_impl(SysMouseImpl
 
 static int dinput_mouse_hook( LPDIRECTINPUTDEVICE8A iface, WPARAM wparam, LPARAM lparam );
 
-const GUID DInput_Wine_Mouse_GUID = { /* 9e573ed8-7734-11d2-8d4a-23903fb6bdf7 */
-    0x9e573ed8, 0x7734, 0x11d2, {0x8d, 0x4a, 0x23, 0x90, 0x3f, 0xb6, 0xbd, 0xf7}
-};
-
 static void _dump_mouse_state(const DIMOUSESTATE2 *m_state)
 {
     int i;
@@ -121,7 +117,7 @@ static void fill_mouse_dideviceinstanceA(LPDIDEVICEINSTANCEA lpddi, DWORD versio
 
     ddi.dwSize = dwSize;
     ddi.guidInstance = GUID_SysMouse;/* DInput's GUID */
-    ddi.guidProduct = DInput_Wine_Mouse_GUID; /* Vendor's GUID */
+    ddi.guidProduct = GUID_SysMouse;
     if (version >= 0x0800)
         ddi.dwDevType = DI8DEVTYPE_MOUSE | (DI8DEVTYPEMOUSE_TRADITIONAL << 8);
     else
@@ -145,7 +141,7 @@ static void fill_mouse_dideviceinstanceW(LPDIDEVICEINSTANCEW lpddi, DWORD versio
 
     ddi.dwSize = dwSize;
     ddi.guidInstance = GUID_SysMouse;/* DInput's GUID */
-    ddi.guidProduct = DInput_Wine_Mouse_GUID; /* Vendor's GUID */
+    ddi.guidProduct = GUID_SysMouse;
     if (version >= 0x0800)
         ddi.dwDevType = DI8DEVTYPE_MOUSE | (DI8DEVTYPEMOUSE_TRADITIONAL << 8);
     else
@@ -257,8 +253,7 @@ static HRESULT mousedev_create_device(IDirectInputImpl *dinput, REFGUID rguid, R
     TRACE("%p %s %s %p %i\n", dinput, debugstr_guid(rguid), debugstr_guid(riid), pdev, unicode);
     *pdev = NULL;
 
-    if (IsEqualGUID(&GUID_SysMouse, rguid) ||        /* Generic Mouse */
-        IsEqualGUID(&DInput_Wine_Mouse_GUID, rguid)) /* Wine Mouse */
+    if (IsEqualGUID(&GUID_SysMouse, rguid)) /* Wine Mouse */
     {
         SysMouseImpl *This;
 
diff --git a/dlls/dinput/tests/dinput.c b/dlls/dinput/tests/dinput.c
index f30d2cc..9bd1951 100644
--- a/dlls/dinput/tests/dinput.c
+++ b/dlls/dinput/tests/dinput.c
@@ -396,7 +396,6 @@ static BOOL CALLBACK enum_devices_callback(const DIDEVICEINSTANCEA *instance, vo
            (instance->dwDevType & 0xff) == DIDEVTYPE_MOUSE) {
         const char *device = ((instance->dwDevType & 0xff) ==
                                    DIDEVTYPE_KEYBOARD) ? "Keyboard" : "Mouse";
-        todo_wine
         ok(IsEqualGUID(&instance->guidInstance, &instance->guidProduct),
            "%s guidInstance (%s) does not match guidProduct (%s)\n",
            device, wine_dbgstr_guid(&instance->guidInstance),
diff --git a/dlls/dinput8/tests/dinput.c b/dlls/dinput8/tests/dinput.c
index 43bac03..1cc3ddc 100644
--- a/dlls/dinput8/tests/dinput.c
+++ b/dlls/dinput8/tests/dinput.c
@@ -381,7 +381,6 @@ static BOOL CALLBACK enum_devices_callback(const DIDEVICEINSTANCEA *instance, vo
            (instance->dwDevType & 0xff) == DI8DEVTYPE_MOUSE) {
         const char *device = ((instance->dwDevType & 0xff) ==
                                    DI8DEVTYPE_KEYBOARD) ? "Keyboard" : "Mouse";
-        todo_wine
         ok(IsEqualGUID(&instance->guidInstance, &instance->guidProduct),
            "%s guidInstance (%s) does not match guidProduct (%s)\n",
            device, wine_dbgstr_guid(&instance->guidInstance),




More information about the wine-cvs mailing list