From ff0f52cc743890d11195e9ba39be067361f2d91c Mon Sep 17 00:00:00 2001 From: "Andres G. Aragoneses" Date: Wed, 14 Oct 2020 21:40:07 +0200 Subject: [PATCH] WIP: fix possible rare error-code 32 problem (seq too low) Being hit by @Laiteux sometimes --- src/TgSharp.Core/Network/MtProtoSender.cs | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/TgSharp.Core/Network/MtProtoSender.cs b/src/TgSharp.Core/Network/MtProtoSender.cs index 932bde62..e5f59aa7 100644 --- a/src/TgSharp.Core/Network/MtProtoSender.cs +++ b/src/TgSharp.Core/Network/MtProtoSender.cs @@ -38,9 +38,12 @@ public MtProtoSender(TcpTransport transport, ISessionStore sessionStore, Session private int GenerateSequence(bool confirmed) { lock (session.Lock) { + var lastSequence = session.Sequence; + var newSequence = lastSequence + 1; try { - return confirmed ? session.Sequence++ * 2 + 1 : session.Sequence * 2; + return confirmed ? newSequence * 2 + 1 : newSequence * 2; } finally { + session.Sequence = newSequence; sessionStore.Save(session); } }