From b9f145caa42ed2a4459349ab321307569ac7b4d0 Mon Sep 17 00:00:00 2001 From: Bruno Windels Date: Fri, 23 Apr 2021 18:04:10 +0200 Subject: [PATCH] emit events for rooms before invites so the room is already there when removing the invite --- src/matrix/Sync.js | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/src/matrix/Sync.js b/src/matrix/Sync.js index 5f8d4e06..c8454dd6 100644 --- a/src/matrix/Sync.js +++ b/src/matrix/Sync.js @@ -287,18 +287,19 @@ export class Sync { _afterSync(sessionState, inviteStates, roomStates, log) { log.wrap("session", log => this._session.afterSync(sessionState.changes, log), log.level.Detail); + // emit room related events after txn has been closed + for(let rs of roomStates) { + log.wrap("room", log => rs.room.afterSync(rs.changes, log), log.level.Detail); + if (rs.isNewRoom) { + this._session.addRoomAfterSync(rs.room); + } + } // emit invite related events after txn has been closed for(let is of inviteStates) { log.wrap("invite", () => is.invite.afterSync(is.changes), log.level.Detail); if (is.isNewInvite) { this._session.addInviteAfterSync(is.invite); } - } - // emit room related events after txn has been closed - for(let rs of roomStates) { - log.wrap("room", log => rs.room.afterSync(rs.changes, log), log.level.Detail); - if (rs.isNewRoom) { - this._session.addRoomAfterSync(rs.room); } } }