diff --git a/bridgev2/portal.go b/bridgev2/portal.go index a5980fae..6654b9d8 100644 --- a/bridgev2/portal.go +++ b/bridgev2/portal.go @@ -1071,6 +1071,14 @@ func (portal *Portal) handleMatrixReaction(ctx context.Context, sender *UserLogi if err != nil { log.Err(err).Msg("Failed to pre-handle Matrix reaction") portal.sendErrorStatus(ctx, evt, err) + _, err := sender.User.DoublePuppet(ctx).SendMessage(ctx, portal.MXID, event.EventRedaction, &event.Content{ + Parsed: &event.RedactionEventContent{ + Redacts: evt.ID, + }, + }, nil) + if err != nil { + log.Err(err).Msg("Failed to remove errored reaction") + } return } existing, err := portal.Bridge.DB.Reaction.GetByID(ctx, reactionTarget.ID, reactionTarget.PartID, preResp.SenderID, preResp.EmojiID) @@ -1126,6 +1134,14 @@ func (portal *Portal) handleMatrixReaction(ctx context.Context, sender *UserLogi if err != nil { log.Err(err).Msg("Failed to handle Matrix reaction") portal.sendErrorStatus(ctx, evt, err) + _, err := sender.User.DoublePuppet(ctx).SendMessage(ctx, portal.MXID, event.EventRedaction, &event.Content{ + Parsed: &event.RedactionEventContent{ + Redacts: evt.ID, + }, + }, nil) + if err != nil { + log.Err(err).Msg("Failed to remove errored reaction") + } return } if dbReaction == nil {