From: Alexander Graf <[email protected]> Delays in the input layer are special cased input events. Every input event is accounted for in a global intput queue count. The special cased delays however did not get removed from the queue, leading to queue overruns and thus silent key drops after typing quite a few characters.
Signed-off-by: Alexander Graf <[email protected]> Message-id: [email protected] Fixes: be1a7176 ("input: add support for kbd delays") Cc: [email protected] Signed-off-by: Gerd Hoffmann <[email protected]> (cherry picked from commit 77b0359bf414ad666d1714dc9888f1017c08e283) Signed-off-by: Michael Roth <[email protected]> --- ui/input.c | 1 + 1 file changed, 1 insertion(+) diff --git a/ui/input.c b/ui/input.c index fb1f404..94ba3d5 100644 --- a/ui/input.c +++ b/ui/input.c @@ -252,6 +252,7 @@ static void qemu_input_queue_process(void *opaque) item = QTAILQ_FIRST(queue); g_assert(item->type == QEMU_INPUT_QUEUE_DELAY); QTAILQ_REMOVE(queue, item, node); + queue_count--; g_free(item); while (!QTAILQ_EMPTY(queue)) { -- 2.7.4
