From 58aed46f13a7dd0c8d7991889e9473331c41feb1 Mon Sep 17 00:00:00 2001 From: Gary Kramlich Date: Fri, 22 Apr 2022 07:23:13 -0500 Subject: [PATCH] Fix an issue when trying to create a matrix room It doesn't make sense to create a matrix room for an edit/redaction/reaction if we don't have the original message. Also we can't as we don't always have all of the information. So now we don't try to create the room unless it's a message being created. --- bridge/portal.go | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/bridge/portal.go b/bridge/portal.go index a39aa47..6396677 100644 --- a/bridge/portal.go +++ b/bridge/portal.go @@ -261,9 +261,14 @@ func (p *Portal) createMatrixRoom(user *User, channel *discordgo.Channel) error func (p *Portal) handleDiscordMessages(msg portalDiscordMessage) { if p.MXID == "" { + discordMsg, ok := msg.msg.(*discordgo.MessageCreate) + if !ok { + p.log.Warnln("Can't create Matrix room from non new message event") + return + } + p.log.Debugln("Creating Matrix room from incoming message") - discordMsg := msg.msg.(*discordgo.MessageCreate) channel, err := msg.user.Session.Channel(discordMsg.ChannelID) if err != nil { p.log.Errorln("Failed to find channel for message:", err)