fix data not being passed on, caused crash on initial sync

This commit is contained in:
Bruno Windels 2020-09-14 17:45:13 +02:00
parent a11b612640
commit 75bff228ec
2 changed files with 4 additions and 3 deletions

View file

@ -181,7 +181,7 @@ export class Room extends EventEmitter {
// fetch new members while we have txn open,
// but don't make any in-memory changes yet
let heroChanges;
if (needsHeroes(summaryChanges)) {
if (summaryChanges && needsHeroes(summaryChanges)) {
// room name disappeared, open heroes
if (!this._heroes) {
this._heroes = new Heroes(this._roomId);

View file

@ -52,6 +52,7 @@ function applySyncResponse(data, roomResponse, membership) {
if (typeof event.state_key === "string") {
return processStateEvent(data, event);
}
return data;
}, data);
}
const unreadNotifications = roomResponse.unread_notifications;
@ -307,9 +308,9 @@ export class RoomSummary {
// clear cloned flag, so cloneIfNeeded makes a copy and
// this._data is not modified if any field is changed.
this._data.cloned = false;
let data = applySyncResponse(this._data, roomResponse, membership);
let data = applySyncResponse(this._data, roomResponse, membership);
data = applyTimelineEntries(
this._data,
data,
timelineEntries,
isInitialSync, isTimelineOpen,
this._ownUserId);