From f4bd5e7ef54f40c6c67095c04da0177e92dc0faf Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mert=20D=C3=B6ner?= Date: Mon, 1 Jun 2026 20:06:05 +0300 Subject: [PATCH] fix: guard silent chat trim to avoid OOB write --- src/core/managers/chat_manager.cpp | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/core/managers/chat_manager.cpp b/src/core/managers/chat_manager.cpp index 0811b36aa..705f358d4 100644 --- a/src/core/managers/chat_manager.cpp +++ b/src/core/managers/chat_manager.cpp @@ -70,7 +70,11 @@ void DetourHostSay(CEntityInstance* pController, CCommand& args, bool teamonly, char* pszMessage = (char*)(args.ArgS() + prefix.length() + 1); // Trailing slashes are only removed if Host_Say has been called. - if (bSilent) pszMessage[V_strlen(pszMessage) - 1] = 0; + if (bSilent){ + const auto len = V_strlen(pszMessage); + if (len > 0) { pszMessage[len - 1] = 0;} + } + CCommand args; args.Tokenize(pszMessage);