From bb1e3e4b0affdc7e97260bb0f711da8b5c9d7116 Mon Sep 17 00:00:00 2001 From: Arslan Tek <90643738+arslanarso@users.noreply.github.com> Date: Thu, 28 Nov 2024 10:44:02 +0300 Subject: [PATCH 1/2] This line triggered the _scheduleResume function even when the network was offline. This line triggered the _scheduleResume function even when the network was offline. Given the presence of the listener mechanism, this line is redundant and its removal is recommended to avoid unnecessary operations. --- modules/xmpp/ResumeTask.js | 1 - 1 file changed, 1 deletion(-) diff --git a/modules/xmpp/ResumeTask.js b/modules/xmpp/ResumeTask.js index b1b1e4a77a..8542d2f713 100644 --- a/modules/xmpp/ResumeTask.js +++ b/modules/xmpp/ResumeTask.js @@ -69,7 +69,6 @@ export default class ResumeTask { } }); - NetworkInfo.isOnline() && this._scheduleResume(); } /** From 39f1dca2dac1abd81cc6ec77066745619ac145ea Mon Sep 17 00:00:00 2001 From: Arslan Tek <90643738+arslanarso@users.noreply.github.com> Date: Thu, 28 Nov 2024 10:50:52 +0300 Subject: [PATCH 2/2] Move this._resumeRetryN += 1 from schedule to _scheduleResume Incrementing this._resumeRetryN within the _scheduleResume function ensures that the retry count is updated only when a resume task is actually scheduled. Previously, incrementing it in the schedule function could lead to unnecessary increments even when no retry task was initiated (e.g., due to conditions preventing _scheduleResume from being called). This change makes the retry count logic more accurate and aligned with actual resume attempts, improving the reliability of the retry mechanism. --- modules/xmpp/ResumeTask.js | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/modules/xmpp/ResumeTask.js b/modules/xmpp/ResumeTask.js index 8542d2f713..35c63822cd 100644 --- a/modules/xmpp/ResumeTask.js +++ b/modules/xmpp/ResumeTask.js @@ -56,7 +56,6 @@ export default class ResumeTask { this._cancelResume(); this._removeNetworkOnlineListener(); - this._resumeRetryN += 1; this._networkOnlineListener = NetworkInfo.addCancellableListener( @@ -83,6 +82,8 @@ export default class ResumeTask { return; } + this._resumeRetryN += 1; + // The retry delay will be: // 1st retry: 1.5s - 3s // 2nd retry: 3s - 9s