From a124b6c100143076a27137b8633703e93aaece8c Mon Sep 17 00:00:00 2001 From: Evan Morikawa Date: Wed, 18 Jan 2017 17:30:30 -0800 Subject: [PATCH] [local-sync] protection from reset action being double-fired Summary: Double-firing protection since the DatabaseStore can now fire this Test Plan: manual Reviewers: juan Reviewed By: juan Differential Revision: https://phab.nylas.com/D3730 --- .../src/local-sync-worker/sync-process-manager.js | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/packages/local-sync/src/local-sync-worker/sync-process-manager.js b/packages/local-sync/src/local-sync-worker/sync-process-manager.js index 0e1c6009a..410ac1131 100644 --- a/packages/local-sync/src/local-sync-worker/sync-process-manager.js +++ b/packages/local-sync/src/local-sync-worker/sync-process-manager.js @@ -36,11 +36,14 @@ class SyncProcessManager { Actions.wakeLocalSyncWorkerForAccount.listen((accountId) => this.wakeWorkerForAccount(accountId) - ) + ); + this._resettingEmailCache = false Actions.resetEmailCache.listen(this._resetEmailCache, this) } _resetEmailCache() { + if (this._resettingEmailCache) return; + this._resettingEmailCache = true try { for (const worker of this.workers()) { worker.stopSync() @@ -57,6 +60,7 @@ class SyncProcessManager { }, 100) } catch (err) { console.error(err) + this._resettingEmailCache = false } }