diff options
| author | Andrej Mihajlov <and@mullvad.net> | 2019-08-13 12:07:07 +0300 |
|---|---|---|
| committer | Andrej Mihajlov <and@mullvad.net> | 2019-08-13 12:07:07 +0300 |
| commit | 62e5df0163245e5ad403059287c3049606e61096 (patch) | |
| tree | f4b0f4bbc913ad7e78222b304122fec5dab732c2 | |
| parent | af906b4fc09a6acbf52aaf396d7104466b4de3c4 (diff) | |
| download | mullvadvpn-62e5df0163245e5ad403059287c3049606e61096.tar.xz mullvadvpn-62e5df0163245e5ad403059287c3049606e61096.zip | |
Make sure that the new observer is registered in the observers array before calling makePeriodicUpdateProcedure
| -rw-r--r-- | ios/MullvadVPN/AccountExpiryRefresh.swift | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/ios/MullvadVPN/AccountExpiryRefresh.swift b/ios/MullvadVPN/AccountExpiryRefresh.swift index 14feadccd1..c6b1c6278b 100644 --- a/ios/MullvadVPN/AccountExpiryRefresh.swift +++ b/ios/MullvadVPN/AccountExpiryRefresh.swift @@ -43,11 +43,13 @@ class AccountExpiryRefresh { /// Register observer and start updating the account expiry if hasn't started yet private func addObserver(_ observer: Observer) { lock.withCriticalScope { - if observers.isEmpty { - procedureQueue.addOperation(makePeriodicUpdateProcedure()) - } + let wasEmpty = observers.isEmpty observers.append(WeakBox(observer)) + + if wasEmpty { + procedureQueue.addOperation(makePeriodicUpdateProcedure()) + } } } |
