1
0
forked from aniani/vim

patch 8.2.0647: MS-Windows: repeat count for events was not used

Problem:    MS-Windows: repeat count for events was not used.
Solution:   Check the repeat count. (Nobuhiro Takasaki, closes #5989)
This commit is contained in:
Bram Moolenaar
2020-04-26 19:00:07 +02:00
parent 759d81549c
commit bc970da807
2 changed files with 16 additions and 0 deletions

View File

@@ -307,6 +307,7 @@ read_console_input(
int head;
int tail;
int i;
static INPUT_RECORD s_irPseudo;
if (nLength == -2)
return (s_dwMax > 0) ? TRUE : FALSE;
@@ -354,6 +355,19 @@ read_console_input(
}
}
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;

View File

@@ -746,6 +746,8 @@ static char *(features[]) =
static int included_patches[] =
{ /* Add new patch number below this line */
/**/
647,
/**/
646,
/**/