From c3c4ba6b0a5891b837b9bb1f04bdd6275b263ab5 Mon Sep 17 00:00:00 2001 From: Isaac0-dev <62234577+Isaac0-dev@users.noreply.github.com> Date: Fri, 21 Feb 2025 10:13:00 +1000 Subject: [PATCH] check for even number of escape characters to allow colored names, while preventing invalid escape characters --- src/pc/djui/djui_panel_player.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/pc/djui/djui_panel_player.c b/src/pc/djui/djui_panel_player.c index 098ae1ac2..b71fe0ca6 100644 --- a/src/pc/djui/djui_panel_player.c +++ b/src/pc/djui/djui_panel_player.c @@ -329,13 +329,15 @@ static void djui_panel_player_edit_palette_create(struct DjuiBase* caller) { bool djui_panel_player_name_valid(char* buffer) { if (buffer[0] == '\0') { return false; } + u16 numEscapeChars = 0; char* c = buffer; while (*c != '\0') { if (*c == ' ') { return false; } - if (*c == '\\') { return false; } if (!djui_unicode_valid_char(c)) { return false; } + if (*c == '\\') { numEscapeChars++; } c = djui_unicode_next_char(c); } + if (numEscapeChars % 2 != 0) { return false; } return true; }