Problem: MS-Windows: repeat count for events was not used.
Solution: Check the repeat count. (Nobuhiro Takasaki, closes #5989)
int head;
int tail;
int i;
+ static INPUT_RECORD s_irPseudo;
if (nLength == -2)
return (s_dwMax > 0) ? TRUE : FALSE;
}
}
+ if (s_irCache[s_dwIndex].EventType == KEY_EVENT)
+ {
+ if (s_irCache[s_dwIndex].Event.KeyEvent.wRepeatCount > 1)
+ {
+ s_irPseudo = s_irCache[s_dwIndex];
+ s_irPseudo.Event.KeyEvent.wRepeatCount = 1;
+ s_irCache[s_dwIndex].Event.KeyEvent.wRepeatCount--;
+ *lpBuffer = s_irPseudo;
+ *lpEvents = 1;
+ return TRUE;
+ }
+ }
+
*lpBuffer = s_irCache[s_dwIndex];
if (!(nLength == -1 || nLength == -2) && ++s_dwIndex >= s_dwMax)
s_dwMax = 0;
static int included_patches[] =
{ /* Add new patch number below this line */
+/**/
+ 647,
/**/
646,
/**/