fix: update event status to error on EventTooLarge
This commit is contained in:
parent
b50bab6b29
commit
eef3fd1dfc
|
|
@ -1127,9 +1127,7 @@ class Room {
|
||||||
txid: messageID,
|
txid: messageID,
|
||||||
);
|
);
|
||||||
} catch (e, s) {
|
} catch (e, s) {
|
||||||
if (e is EventTooLarge) {
|
if (e is MatrixException &&
|
||||||
rethrow;
|
|
||||||
} else if (e is MatrixException &&
|
|
||||||
e.retryAfterMs != null &&
|
e.retryAfterMs != null &&
|
||||||
!DateTime.now()
|
!DateTime.now()
|
||||||
.add(Duration(milliseconds: e.retryAfterMs!))
|
.add(Duration(milliseconds: e.retryAfterMs!))
|
||||||
|
|
@ -1138,6 +1136,7 @@ class Room {
|
||||||
'Ratelimited while sending message, waiting for ${e.retryAfterMs}ms');
|
'Ratelimited while sending message, waiting for ${e.retryAfterMs}ms');
|
||||||
await Future.delayed(Duration(milliseconds: e.retryAfterMs!));
|
await Future.delayed(Duration(milliseconds: e.retryAfterMs!));
|
||||||
} else if (e is MatrixException ||
|
} else if (e is MatrixException ||
|
||||||
|
e is EventTooLarge ||
|
||||||
DateTime.now().isAfter(timeoutDate)) {
|
DateTime.now().isAfter(timeoutDate)) {
|
||||||
Logs().w('Problem while sending message', e, s);
|
Logs().w('Problem while sending message', e, s);
|
||||||
syncUpdate.rooms!.join!.values.first.timeline!.events!.first
|
syncUpdate.rooms!.join!.values.first.timeline!.events!.first
|
||||||
|
|
@ -1145,6 +1144,7 @@ class Room {
|
||||||
await _handleFakeSync(syncUpdate);
|
await _handleFakeSync(syncUpdate);
|
||||||
completer.complete();
|
completer.complete();
|
||||||
_sendingQueue.remove(completer);
|
_sendingQueue.remove(completer);
|
||||||
|
if (e is EventTooLarge) rethrow;
|
||||||
return null;
|
return null;
|
||||||
} else {
|
} else {
|
||||||
Logs()
|
Logs()
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue