From 63e0b5b1dc20b4835d47a17fc08dd37b9dbe4e7e Mon Sep 17 00:00:00 2001 From: NotAFile Date: Thu, 28 Jun 2018 12:59:39 +0200 Subject: [PATCH] Fix a few chat buffer issues (#54) * fix buffer underflow writing to chat * fix another chat buffer write --- src/hud.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/hud.c b/src/hud.c index 0ea6c6d..aa9d29b 100644 --- a/src/hud.c +++ b/src/hud.c @@ -1314,7 +1314,10 @@ static void hud_ingame_keyboard(int key, int action, int mods) { chat_input_mode = CHAT_NO_INPUT; } if(key==WINDOW_KEY_BACKSPACE) { - chat[0][0][strlen(chat[0][0])-1] = 0; + size_t text_len = strlen(chat[0][0]); + if (text_len > 0){ + chat[0][0][text_len-1] = 0; + } } } } @@ -1611,7 +1614,10 @@ static void hud_serverlist_keyboard(int key, int action, int mods) { serverlist_scroll -= 20.0F; } if(key==WINDOW_KEY_BACKSPACE) { - chat[0][0][strlen(chat[0][0])-1] = 0; + size_t text_len = strlen(chat[0][0]); + if (text_len > 0){ + chat[0][0][text_len-1] = 0; + } } if(key==WINDOW_KEY_ENTER && strlen(chat[0][0])>0) { server_c(chat[0][0]);