Merge pull request #375 from vector-im/bwindels/fix-open-encrypted-room-inactive-txn

Load power levels before decryption closes the txn
This commit is contained in:
Bruno Windels 2021-06-02 13:08:28 +00:00 committed by GitHub
commit 1bb61d02de
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -63,6 +63,7 @@ export class Timeline {
// as they should only populate once the view subscribes to it // as they should only populate once the view subscribes to it
// if they are populated already, the sender profile would be empty // if they are populated already, the sender profile would be empty
this._powerLevels = await this._loadPowerLevels(txn);
// 30 seems to be a good amount to fill the entire screen // 30 seems to be a good amount to fill the entire screen
const readerRequest = this._disposables.track(this._timelineReader.readFromEnd(30, txn, log)); const readerRequest = this._disposables.track(this._timelineReader.readFromEnd(30, txn, log));
try { try {
@ -71,7 +72,7 @@ export class Timeline {
} finally { } finally {
this._disposables.disposeTracked(readerRequest); this._disposables.disposeTracked(readerRequest);
} }
this._powerLevels = await this._loadPowerLevels(txn); // txn should be assumed to have finished here, as decryption will close it.
} }
async _loadPowerLevels(txn) { async _loadPowerLevels(txn) {