From 94616b42945ef9d599134b5ddfbc24fcd269304c Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9bastien=20Helleu?= Date: Thu, 14 Dec 2023 23:12:32 +0100 Subject: [PATCH] core: fix infinite loop in display when the chat area is too small (issue #2053) --- ChangeLog.adoc | 7 +++++++ src/gui/curses/gui-curses-chat.c | 4 ++++ 2 files changed, 11 insertions(+) diff --git a/ChangeLog.adoc b/ChangeLog.adoc index 9465e35b1..3e618844d 100644 --- a/ChangeLog.adoc +++ b/ChangeLog.adoc @@ -10,6 +10,13 @@ This document lists all the changes for each version. + For a list of important changes that require manual actions, please look at release notes. +[[v4.1.3]] +== Version 4.1.3 (under dev) + +Bug fixes:: + + * core: fix infinite loop in display when the chat area is too small (issue #2053) + [[v4.1.2]] == Version 4.1.2 (2023-12-03) diff --git a/src/gui/curses/gui-curses-chat.c b/src/gui/curses/gui-curses-chat.c index bc2fb99c6..1cad15804 100644 --- a/src/gui/curses/gui-curses-chat.c +++ b/src/gui/curses/gui-curses-chat.c @@ -643,6 +643,8 @@ gui_chat_display_word (struct t_gui_window *window, nick_offline); } ptr_data[pos_saved_char] = saved_char; + if (pos_saved_char == 0) + break; ptr_data += pos_saved_char; } else @@ -664,6 +666,8 @@ gui_chat_display_word (struct t_gui_window *window, apply_style_inactive, nick_offline); } + if (!ptr_data[0]) + break; ptr_data += strlen (ptr_data); }