From 034e5d5a55ca2781372ba4c789c2a5e5205060cd Mon Sep 17 00:00:00 2001 From: Neil Alexander Date: Thu, 27 Aug 2020 11:47:13 +0100 Subject: [PATCH] Speed up accepting invites from remote users if we're already in the room (#1349) --- roomserver/internal/perform_join.go | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/roomserver/internal/perform_join.go b/roomserver/internal/perform_join.go index b92a6663b..3b9b1b3ca 100644 --- a/roomserver/internal/perform_join.go +++ b/roomserver/internal/perform_join.go @@ -161,8 +161,9 @@ func (r *RoomserverInternalAPI) performJoinRoomByID( // where we might think we know about a room in the following // section but don't know the latest state as all of our users // have left. + serverInRoom, _ := r.isServerCurrentlyInRoom(ctx, r.ServerName, req.RoomIDOrAlias) isInvitePending, inviteSender, _, err := r.isInvitePending(ctx, req.RoomIDOrAlias, req.UserID) - if err == nil && isInvitePending { + if err == nil && isInvitePending && !serverInRoom { // Check if there's an invite pending. _, inviterDomain, ierr := gomatrixserverlib.SplitID('@', inviteSender) if ierr != nil {