Module: wine Branch: master Commit: cb0e61c3562731a4d553146ff576d5bcae3f4dfd URL: http://source.winehq.org/git/wine.git/?a=commit;h=cb0e61c3562731a4d553146ff5...
Author: Vitaliy Margolen wine-patches@kievinfo.com Date: Sun Apr 8 09:05:56 2007 -0600
dinput: Set the event regardless of the queue state.
---
dlls/dinput/device.c | 4 +++- 1 files changed, 3 insertions(+), 1 deletions(-)
diff --git a/dlls/dinput/device.c b/dlls/dinput/device.c index ee3832b..77c0c24 100644 --- a/dlls/dinput/device.c +++ b/dlls/dinput/device.c @@ -522,6 +522,9 @@ void queue_event(LPDIRECTINPUTDEVICE8A iface, int ofs, DWORD data, DWORD time, D IDirectInputDevice2AImpl *This = (IDirectInputDevice2AImpl *)iface; int next_pos;
+ /* Event is being set regardless of the queue state */ + if (This->hEvent) SetEvent(This->hEvent); + if (!This->queue_len || This->overflow || ofs < 0) return;
next_pos = (This->queue_head + 1) % This->queue_len; @@ -541,7 +544,6 @@ void queue_event(LPDIRECTINPUTDEVICE8A iface, int ofs, DWORD data, DWORD time, D This->data_queue[This->queue_head].dwSequence = seq; This->queue_head = next_pos; /* Send event if asked */ - if (This->hEvent) SetEvent(This->hEvent); }
/******************************************************************************