[PATCH 1/4] dinput: Keep action names when converting back to ansi.
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52198 Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/dinput/ansi.c | 1 - 1 file changed, 1 deletion(-) diff --git a/dlls/dinput/ansi.c b/dlls/dinput/ansi.c index 3c7b6ced169..a773dacbec5 100644 --- a/dlls/dinput/ansi.c +++ b/dlls/dinput/ansi.c @@ -150,7 +150,6 @@ static void diactionformat_wtoa( const DIACTIONFORMATW *in, DIACTIONFORMATA *out out->rgoAction[i].guidInstance = in->rgoAction[i].guidInstance; out->rgoAction[i].dwObjID = in->rgoAction[i].dwObjID; out->rgoAction[i].dwHow = in->rgoAction[i].dwHow; - out->rgoAction[i].lptszActionName = 0; } out->guidActionMap = in->guidActionMap; -- 2.34.0
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52198 Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/dinput/ansi.c | 1 - 1 file changed, 1 deletion(-) diff --git a/dlls/dinput/ansi.c b/dlls/dinput/ansi.c index a773dacbec5..10b96a1e059 100644 --- a/dlls/dinput/ansi.c +++ b/dlls/dinput/ansi.c @@ -829,7 +829,6 @@ static HRESULT WINAPI dinput8_a_ConfigureDevices( IDirectInput8A *iface_a, LPDIC HRESULT hr; DWORD i; - if (!callback) return DIERR_INVALIDPARAM; if (FAILED(hr = diconfiguredevicesparams_atow( params_a, ¶ms_w ))) return hr; format_w.dwNumActions = format_a->dwNumActions; -- 2.34.0
Wine-Bug: https://bugs.winehq.org/show_bug.cgi?id=52198 Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/dinput/ansi.c | 1 + 1 file changed, 1 insertion(+) diff --git a/dlls/dinput/ansi.c b/dlls/dinput/ansi.c index 10b96a1e059..b7ec426b2e0 100644 --- a/dlls/dinput/ansi.c +++ b/dlls/dinput/ansi.c @@ -840,6 +840,7 @@ static HRESULT WINAPI dinput8_a_ConfigureDevices( IDirectInput8A *iface_a, LPDIC params_w.lprgFormats = &format_w; if (SUCCEEDED(hr)) hr = IDirectInput8_ConfigureDevices( iface_w, callback, ¶ms_w, flags, ref ); + if (SUCCEEDED(hr)) diactionformat_wtoa( &format_w, format_a ); if (!format_w.hInstString) { -- 2.34.0
This makes sure we don't try to set effect_state report id from objects without a collection, causing some false warnings. Signed-off-by: Rémi Bernon <rbernon(a)codeweavers.com> --- dlls/dinput/joystick_hid.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/dlls/dinput/joystick_hid.c b/dlls/dinput/joystick_hid.c index dc6067ddeb1..3b02600ce4e 100644 --- a/dlls/dinput/joystick_hid.c +++ b/dlls/dinput/joystick_hid.c @@ -1738,6 +1738,9 @@ static BOOL init_pid_caps( struct hid_joystick *impl, struct hid_value_caps *cap FIXME( "multiple " #rep " report ids!\n" ); \ } while (0) + if (!instance->wCollectionNumber) + return DIENUM_CONTINUE; + if (instance->wCollectionNumber == effect_state->collection) SET_REPORT_ID( effect_state ); -- 2.34.0
participants (1)
-
Rémi Bernon