[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-trivial] [PATCH] TextConsole: saturate escape parameter in TTY_STA
From: |
Laszlo Ersek |
Subject: |
[Qemu-trivial] [PATCH] TextConsole: saturate escape parameter in TTY_STATE_CSI |
Date: |
Mon, 17 Sep 2012 11:10:03 +0200 |
Signed-off-by: Laszlo Ersek <address@hidden>
---
Build tested.
console.c | 7 +++++--
1 files changed, 5 insertions(+), 2 deletions(-)
diff --git a/console.c b/console.c
index c1ed5e0..67080f4 100644
--- a/console.c
+++ b/console.c
@@ -938,8 +938,11 @@ static void console_putchar(TextConsole *s, int ch)
case TTY_STATE_CSI: /* handle escape sequence parameters */
if (ch >= '0' && ch <= '9') {
if (s->nb_esc_params < MAX_ESC_PARAMS) {
- s->esc_params[s->nb_esc_params] =
- s->esc_params[s->nb_esc_params] * 10 + ch - '0';
+ int *param = &s->esc_params[s->nb_esc_params];
+ int digit = (ch - '0');
+
+ *param = (*param <= (INT_MAX - digit) / 10) ?
+ *param * 10 + digit : INT_MAX;
}
} else {
if (s->nb_esc_params < MAX_ESC_PARAMS)
--
1.7.1
- [Qemu-trivial] [PATCH] TextConsole: saturate escape parameter in TTY_STATE_CSI,
Laszlo Ersek <=