Thumbnail

rani/matterbridge.git

Clone URL: https://git.buni.party/rani/matterbridge.git

commit 8315a428b848358b839cdc793d381a42314bc222 Author: Qais Patankar <qaisjp@gmail.com> Date: Thu Dec 31 16:21:37 2020 +0000 Reject cross-channel message references (discord) (#1345) Discord message references have been designed in a way for this to support cross-channel or even cross-guild references in the future. This will ensure the ParentID is *not* set when the message refers to a message that was sent in a different channel. diff --git a/bridge/discord/handlers.go b/bridge/discord/handlers.go index d2b3853..81a0e11 100644 --- a/bridge/discord/handlers.go +++ b/bridge/discord/handlers.go @@ -1279 +1279 @@ func (b *Bdiscord) messageCreate(s *discordgo.Session, m *discordgo.MessageCreat   // Replace emotes   rmsg.Text = replaceEmotes(rmsg.Text)   - // Add our parent id if it exists - if m.MessageReference != nil { - rmsg.ParentID = m.MessageReference.MessageID + // Add our parent id if it exists, and if it's not referring to a message in another channel + if ref := m.MessageReference; ref != nil && ref.ChannelID == m.ChannelID { + rmsg.ParentID = ref.MessageID   }     b.Log.Debugf("<= Sending message from %s on %s to gateway", m.Author.Username, b.Account)