Merge branch 'fix-dedi-chat' into 'master'

Fix chat messages being krangled on dedicated servers

See merge request KartKrew/Kart!1235
This commit is contained in:
Oni 2023-05-15 18:23:03 +00:00
commit d0021a75be
2 changed files with 13 additions and 3 deletions

View file

@ -4981,8 +4981,18 @@ static void PT_Say(int node)
say_pak say = netbuffer->u.say;
if (playernode[say.source] != node)
return; // Spoofed source!
// Check for a spoofed source.
if (say.source == serverplayer)
{
// Servers aren't guaranteed to have a playernode, dedis exist.
if (node != servernode)
return;
}
else
{
if (playernode[say.source] != node)
return;
}
if ((cv_mute.value || say.flags & (HU_CSAY|HU_SHOUT)) && say.source != serverplayer && !(IsPlayerAdmin(say.source)))
{

View file

@ -511,7 +511,7 @@ void DoSayCommand(char *message, SINT8 target, UINT8 flags, UINT8 source)
char *msg = &buf[3];
// Enforce shout for the dedicated server.
if (dedicated && !(flags & HU_CSAY))
if (dedicated && source == serverplayer && !(flags & HU_CSAY))
{
flags |= HU_SHOUT;
}