mirror of
https://github.com/LonamiWebs/Telethon.git
synced 2025-06-17 18:46:40 +00:00
fix(MtProtoSender): improve error handling on BadMsgNotification for seq_no too low/too high
This commit is contained in:
parent
a6259eaf3f
commit
9876cd6e77
@ -824,12 +824,11 @@ class MTProtoSender:
|
|||||||
correct_msg_id=message.msg_id)
|
correct_msg_id=message.msg_id)
|
||||||
self._log.info('System clock is wrong, set time offset to %ds', to)
|
self._log.info('System clock is wrong, set time offset to %ds', to)
|
||||||
elif bad_msg.error_code == 32:
|
elif bad_msg.error_code == 32:
|
||||||
# msg_seqno too low, so just pump it up by some "large" amount
|
# msg_seqno too low
|
||||||
# TODO A better fix would be to start with a new fresh session ID
|
self._state.reset(keep_key=True)
|
||||||
self._state._sequence += 64
|
|
||||||
elif bad_msg.error_code == 33:
|
elif bad_msg.error_code == 33:
|
||||||
# msg_seqno too high never seems to happen but just in case
|
# msg_seqno too high
|
||||||
self._state._sequence -= 16
|
self._state.reset(keep_key=True)
|
||||||
else:
|
else:
|
||||||
for state in states:
|
for state in states:
|
||||||
state.future.set_exception(
|
state.future.set_exception(
|
||||||
|
Loading…
Reference in New Issue
Block a user