mirror of
https://github.com/matrix-org/dendrite.git
synced 2025-12-10 16:33:11 -06:00
Fixed membership removal
This commit is contained in:
parent
837e3a62bb
commit
3624952372
|
|
@ -122,10 +122,17 @@ func (d *Database) SaveMembership(localpart string, roomID string, eventID strin
|
|||
return d.memberships.insertMembership(localpart, roomID, eventID)
|
||||
}
|
||||
|
||||
// RemoveMembership removes the membership of which the `join` membership event
|
||||
// ID matches with the given event ID.
|
||||
// RemoveMembership removes the membership linking the user matching a given
|
||||
// localpart and the room matching a given room ID.
|
||||
// If the removal fails, or if there is no membership to remove, returns an error
|
||||
func (d *Database) RemoveMembership(eventID string) error {
|
||||
func (d *Database) RemoveMembership(localpart string, roomID string) error {
|
||||
return d.memberships.deleteMembership(localpart, roomID)
|
||||
}
|
||||
|
||||
// RemoveMembershipByEventID removes the membership of which the `join` membership
|
||||
// event ID matches a given event ID
|
||||
// If the removal fails, or if there is no membership to remove, returns an error
|
||||
func (d *Database) RemoveMembershipByEventID(eventID string) error {
|
||||
return d.memberships.deleteMembershipByEventID(eventID)
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -101,7 +101,7 @@ func (s *OutputRoomEvent) onMessage(msg *sarama.ConsumerMessage) error {
|
|||
}
|
||||
|
||||
for _, id := range output.NewRoomEvent.RemovesStateEventIDs {
|
||||
if err := s.db.RemoveMembership(id); err != nil {
|
||||
if err := s.db.RemoveMembershipByEventID(id); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
|
@ -183,7 +183,7 @@ func (s *OutputRoomEvent) updateMembership(ev gomatrixserverlib.Event) error {
|
|||
}
|
||||
case "leave":
|
||||
case "ban":
|
||||
if err := s.db.RemoveMembership(eventID); err != nil {
|
||||
if err := s.db.RemoveMembership(localpart, roomID); err != nil {
|
||||
return err
|
||||
}
|
||||
}
|
||||
|
|
|
|||
Loading…
Reference in a new issue