You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against 10dcee21c4b28b7f1cedc9ade01c09616521b628
This commit is contained in:
@@ -1,27 +0,0 @@
|
||||
From 7b59e0a7d0962899762b5b7a466d16b97d771df2 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Sat, 27 Apr 2019 12:53:06 +1000
|
||||
Subject: [PATCH 3/7] dinput: Return E_NOINTERFACE from IDirectInputDevice2
|
||||
QueryInterface
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
dlls/dinput/device.c | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c
|
||||
index 63eb868..1317e91 100644
|
||||
--- a/dlls/dinput/device.c
|
||||
+++ b/dlls/dinput/device.c
|
||||
@@ -1257,7 +1257,7 @@ HRESULT WINAPI IDirectInputDevice2WImpl_QueryInterface(LPDIRECTINPUTDEVICE8W ifa
|
||||
}
|
||||
|
||||
WARN("Unsupported interface!\n");
|
||||
- return E_FAIL;
|
||||
+ return E_NOINTERFACE;
|
||||
}
|
||||
|
||||
HRESULT WINAPI IDirectInputDevice2AImpl_QueryInterface(LPDIRECTINPUTDEVICE8A iface, REFIID riid, LPVOID *ppobj)
|
||||
--
|
||||
1.9.1
|
||||
|
@@ -1,28 +0,0 @@
|
||||
From 1b1158f85ae61f348207460ce98b1977eee79b66 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Sat, 27 Apr 2019 13:10:01 +1000
|
||||
Subject: [PATCH 4/7] dinput: Dont report we cannot open a device
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
dlls/dinput/joystick_linuxinput.c | 3 ---
|
||||
1 file changed, 3 deletions(-)
|
||||
|
||||
diff --git a/dlls/dinput/joystick_linuxinput.c b/dlls/dinput/joystick_linuxinput.c
|
||||
index fb6b305..7343a50 100644
|
||||
--- a/dlls/dinput/joystick_linuxinput.c
|
||||
+++ b/dlls/dinput/joystick_linuxinput.c
|
||||
@@ -219,10 +219,7 @@ static void find_joydevs(void)
|
||||
}
|
||||
|
||||
if (fd == -1)
|
||||
- {
|
||||
- WARN("Failed to open \"%s\": %d %s\n", buf, errno, strerror(errno));
|
||||
continue;
|
||||
- }
|
||||
|
||||
if (ioctl(fd, EVIOCGBIT(0, sizeof(joydev.evbits)), joydev.evbits) == -1)
|
||||
{
|
||||
--
|
||||
1.9.1
|
||||
|
@@ -1,29 +0,0 @@
|
||||
From 0e363558e654e25546127effe43a07c2b2038c9b Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Sat, 27 Apr 2019 13:23:46 +1000
|
||||
Subject: [PATCH 5/7] dinput: Improve EnumDevice tracing
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
dlls/dinput/dinput_main.c | 3 ++-
|
||||
1 file changed, 2 insertions(+), 1 deletion(-)
|
||||
|
||||
diff --git a/dlls/dinput/dinput_main.c b/dlls/dinput/dinput_main.c
|
||||
index 7bf067f..4b41b71 100644
|
||||
--- a/dlls/dinput/dinput_main.c
|
||||
+++ b/dlls/dinput/dinput_main.c
|
||||
@@ -467,9 +467,10 @@ static HRESULT WINAPI IDirectInputAImpl_EnumDevices(
|
||||
|
||||
for (i = 0; i < ARRAY_SIZE(dinput_devices); i++) {
|
||||
if (!dinput_devices[i]->enum_deviceA) continue;
|
||||
+
|
||||
+ TRACE(" Checking device %u ('%s')\n", i, dinput_devices[i]->name);
|
||||
for (j = 0, r = S_OK; SUCCEEDED(r); j++) {
|
||||
devInstance.dwSize = sizeof(devInstance);
|
||||
- TRACE(" - checking device %u ('%s')\n", i, dinput_devices[i]->name);
|
||||
r = dinput_devices[i]->enum_deviceA(dwDevType, dwFlags, &devInstance, This->dwVersion, j);
|
||||
if (r == S_OK)
|
||||
if (enum_callback_wrapper(lpCallback, &devInstance, pvRef) == DIENUM_STOP)
|
||||
--
|
||||
1.9.1
|
||||
|
@@ -1,79 +0,0 @@
|
||||
From e5eb27de156f7d250755fb3070c419e28e9d1957 Mon Sep 17 00:00:00 2001
|
||||
From: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
Date: Sun, 28 Apr 2019 12:11:56 +1000
|
||||
Subject: [PATCH 6/7] dinput: Support DIDEVICEINSTANCE_DX3 for Mouse
|
||||
GetDeviceInfo
|
||||
|
||||
Signed-off-by: Alistair Leslie-Hughes <leslie_alistair@hotmail.com>
|
||||
---
|
||||
dlls/dinput/mouse.c | 5 -----
|
||||
dlls/dinput/tests/mouse.c | 30 ++++++++++++++++++++++++++++++
|
||||
2 files changed, 30 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/dlls/dinput/mouse.c b/dlls/dinput/mouse.c
|
||||
index 0adba03..1e2b1d1 100644
|
||||
--- a/dlls/dinput/mouse.c
|
||||
+++ b/dlls/dinput/mouse.c
|
||||
@@ -765,11 +765,6 @@ static HRESULT WINAPI SysMouseAImpl_GetDeviceInfo(
|
||||
SysMouseImpl *This = impl_from_IDirectInputDevice8A(iface);
|
||||
TRACE("(this=%p,%p)\n", This, pdidi);
|
||||
|
||||
- if (pdidi->dwSize != sizeof(DIDEVICEINSTANCEA)) {
|
||||
- WARN(" dinput3 not supported yet...\n");
|
||||
- return DI_OK;
|
||||
- }
|
||||
-
|
||||
fill_mouse_dideviceinstanceA(pdidi, This->base.dinput->dwVersion);
|
||||
|
||||
return DI_OK;
|
||||
diff --git a/dlls/dinput/tests/mouse.c b/dlls/dinput/tests/mouse.c
|
||||
index c2d0226..c1a7ff7 100644
|
||||
--- a/dlls/dinput/tests/mouse.c
|
||||
+++ b/dlls/dinput/tests/mouse.c
|
||||
@@ -198,6 +198,35 @@ static void test_acquire(IDirectInputA *pDI, HWND hwnd)
|
||||
DestroyWindow( hwnd2 );
|
||||
}
|
||||
|
||||
+static void test_GetDeviceInfo(IDirectInputA *pDI)
|
||||
+{
|
||||
+ HRESULT hr;
|
||||
+ IDirectInputDeviceA *pMouse = NULL;
|
||||
+ DIDEVICEINSTANCEA instA;
|
||||
+ DIDEVICEINSTANCE_DX3A inst3A;
|
||||
+
|
||||
+ hr = IDirectInput_CreateDevice(pDI, &GUID_SysMouse, &pMouse, NULL);
|
||||
+ ok(SUCCEEDED(hr), "IDirectInput_CreateDevice() failed: %08x\n", hr);
|
||||
+ if (FAILED(hr)) return;
|
||||
+
|
||||
+ instA.dwSize = sizeof(instA);
|
||||
+ hr = IDirectInputDevice_GetDeviceInfo(pMouse, &instA);
|
||||
+ ok(SUCCEEDED(hr), "got %08x\n", hr);
|
||||
+
|
||||
+ inst3A.dwSize = sizeof(inst3A);
|
||||
+ hr = IDirectInputDevice_GetDeviceInfo(pMouse, (DIDEVICEINSTANCEA *)&inst3A);
|
||||
+ ok(SUCCEEDED(hr), "got %08x\n", hr);
|
||||
+
|
||||
+ ok(instA.dwSize != inst3A.dwSize, "got %d, %d \n", instA.dwSize, inst3A.dwSize);
|
||||
+ ok(IsEqualGUID(&instA.guidInstance, &inst3A.guidInstance), "got %s, %s\n",
|
||||
+ wine_dbgstr_guid(&instA.guidInstance), wine_dbgstr_guid(&inst3A.guidInstance) );
|
||||
+ ok(IsEqualGUID(&instA.guidProduct, &inst3A.guidProduct), "got %s, %s\n",
|
||||
+ wine_dbgstr_guid(&instA.guidProduct), wine_dbgstr_guid(&inst3A.guidProduct) );
|
||||
+ ok(instA.dwDevType == inst3A.dwDevType, "got %d, %d\n", instA.dwDevType, inst3A.dwDevType);
|
||||
+
|
||||
+ if (pMouse) IUnknown_Release(pMouse);
|
||||
+}
|
||||
+
|
||||
static void mouse_tests(void)
|
||||
{
|
||||
HRESULT hr;
|
||||
@@ -224,6 +253,7 @@ static void mouse_tests(void)
|
||||
|
||||
test_set_coop(pDI, hwnd);
|
||||
test_acquire(pDI, hwnd);
|
||||
+ test_GetDeviceInfo(pDI);
|
||||
|
||||
DestroyWindow(hwnd);
|
||||
}
|
||||
--
|
||||
1.9.1
|
||||
|
Reference in New Issue
Block a user