Make dinput8 behaviour more correct for mouse and keyboard. Fix small bug when keyboard buffer overflows. Use DI_OK instead of 0 for returned values.
diff --git a/dlls/dinput/dinput_private.h b/dlls/dinput/dinput_private.h index 1c537a0..918714b 100644 --- a/dlls/dinput/dinput_private.h +++ b/dlls/dinput/dinput_private.h
@@ -31,12 +31,14 @@ /* Used to have an unique sequence number for all the events */ DWORD evsequence; + + int version; }; /* Function called by all devices that Wine supports */ typedef struct dinput_device { INT pref; - BOOL (*enum_device)(DWORD dwDevType, DWORD dwFlags, LPDIDEVICEINSTANCEA lpddi); + BOOL (*enum_device)(DWORD dwDevType, DWORD dwFlags, LPDIDEVICEINSTANCEA lpddi, int version); HRESULT (*create_device)(IDirectInputAImpl *dinput, REFGUID rguid, REFIID riid, LPDIRECTINPUTDEVICEA* pdev); } dinput_device;