Filter by membership event

This commit is contained in:
Brendan Abolivier 2017-08-23 12:19:56 +01:00
parent 266cb16e61
commit 9a9275559c
No known key found for this signature in database
GPG key ID: 8EF1500759F70623

View file

@ -574,7 +574,9 @@ func (d *Database) getMembershipsBeforeEventNID(eventNID types.EventNID) ([]type
var eventNIDs []types.EventNID var eventNIDs []types.EventNID
for _, entry := range stateEntries { for _, entry := range stateEntries {
eventNIDs = append(eventNIDs, entry.EventNID) if entry.EventStateKeyNID == types.MRoomMemberNID {
eventNIDs = append(eventNIDs, entry.EventNID)
}
} }
// Get all of the events in this state // Get all of the events in this state
@ -585,15 +587,13 @@ 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 }
}
if membership == "join" { if membership == "join" {
events = append(events, event) events = append(events, event)
}
} }
} }