From ae97a7b5ed9b179d84586d59b136544e1919910d Mon Sep 17 00:00:00 2001 From: Ozkan Sezer Date: Thu, 31 Mar 2022 23:02:20 +0300 Subject: [PATCH] Key_Console: change strcpy to memmove for K_UPARROW and K_DOWNARROW --- Quake/keys.c | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/Quake/keys.c b/Quake/keys.c index 15f77edf..84e3d234 100644 --- a/Quake/keys.c +++ b/Quake/keys.c @@ -387,8 +387,9 @@ void Key_Console (int key) } key_tabpartial[0] = 0; - Q_strcpy(workline, key_lines[history_line]); - key_linepos = Q_strlen(workline); + len = strlen(key_lines[history_line]); + memmove(workline, key_lines[history_line], len+1); + key_linepos = (int)len; return; case K_DOWNARROW: @@ -403,9 +404,16 @@ void Key_Console (int key) } while (history_line != edit_line && !key_lines[history_line][1]); if (history_line == edit_line) - Q_strcpy(workline, current); - else Q_strcpy(workline, key_lines[history_line]); - key_linepos = Q_strlen(workline); + { + len = strlen(current); + memcpy(workline, current, len+1); + } + else + { + len = strlen(key_lines[history_line]); + memmove(workline, key_lines[history_line], len+1); + } + key_linepos = (int)len; return; case K_INS: