mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-12 09:23:09 -06:00
Filter by membership event
This commit is contained in:
parent
266cb16e61
commit
9a9275559c
|
|
@ -574,8 +574,10 @@ func (d *Database) getMembershipsBeforeEventNID(eventNID types.EventNID) ([]type
|
||||||
|
|
||||||
var eventNIDs []types.EventNID
|
var eventNIDs []types.EventNID
|
||||||
for _, entry := range stateEntries {
|
for _, entry := range stateEntries {
|
||||||
|
if entry.EventStateKeyNID == types.MRoomMemberNID {
|
||||||
eventNIDs = append(eventNIDs, entry.EventNID)
|
eventNIDs = append(eventNIDs, entry.EventNID)
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Get all of the events in this state
|
// Get all of the events in this state
|
||||||
stateEvents, err := d.Events(eventNIDs)
|
stateEvents, err := d.Events(eventNIDs)
|
||||||
|
|
@ -585,7 +587,6 @@ func (d *Database) getMembershipsBeforeEventNID(eventNID types.EventNID) ([]type
|
||||||
|
|
||||||
// Filter the events to only keep the "join" membership events
|
// Filter the events to only keep the "join" membership events
|
||||||
for _, event := range stateEvents {
|
for _, event := range stateEvents {
|
||||||
if event.Type() == "m.room.member" {
|
|
||||||
membership, err := event.Membership()
|
membership, err := event.Membership()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
|
@ -595,7 +596,6 @@ func (d *Database) getMembershipsBeforeEventNID(eventNID types.EventNID) ([]type
|
||||||
events = append(events, event)
|
events = append(events, event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
|
||||||
|
|
||||||
return events, nil
|
return events, nil
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue