From 9742cbfe7899d34a1e174510b522e95a9109bb12 Mon Sep 17 00:00:00 2001 From: Devon Hudson Date: Mon, 15 May 2023 13:00:13 -0600 Subject: [PATCH] Bulk fetch events for restricted room join members --- roomserver/internal/query/query.go | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/roomserver/internal/query/query.go b/roomserver/internal/query/query.go index f7d32cf15..bf78621ee 100644 --- a/roomserver/internal/query/query.go +++ b/roomserver/internal/query/query.go @@ -882,15 +882,15 @@ func (r *Queryer) GetLocallyJoinedUsers(ctx context.Context, roomVersion gomatri return nil, err } + events, err := r.DB.Events(ctx, roomVersion, joinNIDs) + if err != nil { + return nil, err + } + // For each of the joined users, let's see if we can get a valid // membership event. joinedUsers := []gomatrixserverlib.PDU{} - for _, joinNID := range joinNIDs { - events, err := r.DB.Events(ctx, roomVersion, []types.EventNID{joinNID}) - if err != nil || len(events) != 1 { - continue - } - event := events[0] + for _, event := range events { if event.Type() != spec.MRoomMember || event.StateKey() == nil { continue // shouldn't happen }