From: Tarek BOCHKATI Date: Wed, 18 Aug 2021 18:55:48 +0000 (+0100) Subject: server/telnet: enhance telnet_move_cursor X-Git-Url: https://git.gag.com/?a=commitdiff_plain;h=9a9e9e2c666dcb4987421f89d3b09ff9951cb0a1;p=fw%2Fopenocd server/telnet: enhance telnet_move_cursor instrument the telnet_move_cursor to detect when there is no change of cursor position and if the requested new position is out of bounds. Change-Id: I24da877e538a458da6d2f8ddc2a681eee404d2cb Signed-off-by: Tarek BOCHKATI Reviewed-on: https://review.openocd.org/c/openocd/+/6441 Tested-by: jenkins Reviewed-by: Antonio Borneo --- diff --git a/src/server/telnet_server.c b/src/server/telnet_server.c index f7b3f6449..36b017c58 100644 --- a/src/server/telnet_server.c +++ b/src/server/telnet_server.c @@ -352,10 +352,14 @@ static int telnet_history_print(struct connection *connection) static void telnet_move_cursor(struct connection *connection, size_t pos) { - struct telnet_connection *tc; + struct telnet_connection *tc = connection->priv; size_t tmp; - tc = connection->priv; + if (pos == tc->line_cursor) /* nothing to do */ + return; + + if (pos > tc->line_size) /* out of bounds */ + return; if (pos < tc->line_cursor) { tmp = tc->line_cursor - pos;