36 lines
938 B
Diff
36 lines
938 B
Diff
From 19523565181bb6efb1b9f819d45a7ca8ea6eca19 Mon Sep 17 00:00:00 2001
|
|
From: Chuan Zheng <zhengchuan@huawei.com>
|
|
Date: Wed, 9 Feb 2022 11:21:28 +0800
|
|
Subject: [PATCH 11/15] ps2: fix oob in ps2 kbd
|
|
|
|
fix oob in ps2 kbd
|
|
---
|
|
hw/input/ps2.c | 4 ++--
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
diff --git a/hw/input/ps2.c b/hw/input/ps2.c
|
|
index 9376a8f4ce..5d82ee3cdf 100644
|
|
--- a/hw/input/ps2.c
|
|
+++ b/hw/input/ps2.c
|
|
@@ -205,7 +205,7 @@ void ps2_queue_noirq(PS2State *s, int b)
|
|
}
|
|
|
|
q->data[q->wptr] = b;
|
|
- if (++q->wptr == PS2_BUFFER_SIZE) {
|
|
+ if (++q->wptr >= PS2_BUFFER_SIZE) {
|
|
q->wptr = 0;
|
|
}
|
|
q->count++;
|
|
@@ -578,7 +578,7 @@ uint32_t ps2_read_data(PS2State *s)
|
|
val = q->data[index];
|
|
} else {
|
|
val = q->data[q->rptr];
|
|
- if (++q->rptr == PS2_BUFFER_SIZE) {
|
|
+ if (++q->rptr >= PS2_BUFFER_SIZE) {
|
|
q->rptr = 0;
|
|
}
|
|
q->count--;
|
|
--
|
|
2.27.0
|
|
|