From 2e31d34e9d8ee3d906e7a957bac54a29331e12e6 Mon Sep 17 00:00:00 2001 From: Shadowfacts Date: Thu, 11 Apr 2024 22:30:43 -0400 Subject: [PATCH] Maybe fix continuation being reused --- .../Sources/PushNotifications/PushManagerImpl.swift | 5 ++--- 1 file changed, 2 insertions(+), 3 deletions(-) diff --git a/Packages/PushNotifications/Sources/PushNotifications/PushManagerImpl.swift b/Packages/PushNotifications/Sources/PushNotifications/PushManagerImpl.swift index 6305b6d3..120c0103 100644 --- a/Packages/PushNotifications/Sources/PushNotifications/PushManagerImpl.swift +++ b/Packages/PushNotifications/Sources/PushNotifications/PushManagerImpl.swift @@ -180,9 +180,6 @@ class PushManagerImpl: _PushManager { } private func getDeviceToken() async throws -> Data { - defer { - remoteNotificationsRegistrationContinuation = nil - } return try await withCheckedThrowingContinuation { continuation in remoteNotificationsRegistrationContinuation = continuation UIApplication.shared.registerForRemoteNotifications() @@ -191,10 +188,12 @@ class PushManagerImpl: _PushManager { func didRegisterForRemoteNotifications(deviceToken: Data) { remoteNotificationsRegistrationContinuation?.resume(returning: deviceToken) + remoteNotificationsRegistrationContinuation = nil } func didFailToRegisterForRemoteNotifications(error: any Error) { remoteNotificationsRegistrationContinuation?.resume(throwing: PushRegistrationError.registeringForRemoteNotifications(error)) + remoteNotificationsRegistrationContinuation = nil } private func register(deviceToken: String) async throws -> PushProxyRegistration {