[readability] use event.StateKeyEquals where relevant and minor for-loop refactoring (#1339)

* use event.StateKeyEquals where relevant

Signed-off-by: Olivier Charvin <git@olivier.pfad.fr>

* use userID
This commit is contained in:
oliverpool 2020-08-25 22:04:35 +02:00 committed by GitHub
parent 55498c8deb
commit 3205b9212d
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
10 changed files with 60 additions and 84 deletions

View file

@ -104,7 +104,7 @@ func (b *backfillRequester) calculateNewStateIDs(targetEvent, prevEvent gomatrix
continue
}
// The state IDs BEFORE the target event are the state IDs BEFORE the prev_event PLUS the prev_event itself
if ev.Type() == prevEvent.Type() && ev.StateKey() != nil && *ev.StateKey() == *prevEvent.StateKey() {
if ev.Type() == prevEvent.Type() && ev.StateKeyEquals(*prevEvent.StateKey()) {
newStateIDs[i] = prevEvent.EventID()
foundEvent = true
break

View file

@ -204,11 +204,12 @@ func (r *RoomserverInternalAPI) performJoinRoomByID(
// a member of the room.
alreadyJoined := false
for _, se := range buildRes.StateEvents {
if !se.StateKeyEquals(userID) {
continue
}
if membership, merr := se.Membership(); merr == nil {
if se.StateKey() != nil && *se.StateKey() == *event.StateKey() {
alreadyJoined = (membership == gomatrixserverlib.Join)
break
}
alreadyJoined = (membership == gomatrixserverlib.Join)
break
}
}