Fix chat sanitization and entity name escaping (#12015)
This commit is contained in:
@@ -11,6 +11,7 @@ using Robust.Shared.Prototypes;
|
||||
using Robust.Shared.Network;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.List;
|
||||
using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype.Set;
|
||||
using Robust.Shared.Utility;
|
||||
|
||||
namespace Content.Server.Headset
|
||||
{
|
||||
@@ -71,12 +72,14 @@ namespace Content.Server.Headset
|
||||
if (message.Length == 0)
|
||||
return;
|
||||
|
||||
message = FormattedMessage.EscapeText(message);
|
||||
name = FormattedMessage.EscapeText(name);
|
||||
|
||||
var msg = new MsgChatMessage
|
||||
{
|
||||
Channel = ChatChannel.Radio,
|
||||
Message = message,
|
||||
//Square brackets are added here to avoid issues with escaping
|
||||
MessageWrap = Loc.GetString("chat-radio-message-wrap", ("color", channel.Color), ("channel", $"\\[{channel.LocalizedName}\\]"), ("name", name))
|
||||
WrappedMessage = Loc.GetString("chat-radio-message-wrap", ("color", channel.Color), ("channel", $"\\[{channel.LocalizedName}\\]"), ("name", name), ("message", message))
|
||||
};
|
||||
|
||||
_netManager.ServerSendMessage(msg, playerChannel);
|
||||
|
||||
Reference in New Issue
Block a user