From 36d2788b7a1cd536909bd0a9b8f53e11b6b5bd62 Mon Sep 17 00:00:00 2001 From: Will Taylor Date: Wed, 2 Oct 2024 10:46:56 -0500 Subject: [PATCH] fix bug where we remove messages that weren't shown --- Sources/Support/StoreMessagesHelper.swift | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/Sources/Support/StoreMessagesHelper.swift b/Sources/Support/StoreMessagesHelper.swift index 73df30d6f4..10f764d100 100644 --- a/Sources/Support/StoreMessagesHelper.swift +++ b/Sources/Support/StoreMessagesHelper.swift @@ -57,16 +57,20 @@ actor StoreMessagesHelper: StoreMessagesHelperType { } func showStoreMessages(types: Set) async { + var messagesToKeep: [StoreMessage] = [] for message in self.deferredMessages { if let messageType = message.reason.messageType, types.contains(messageType) { do { try await message.display(in: self.systemInfo.currentWindowScene) } catch { Logger.error(Strings.storeKit.error_displaying_store_message(error)) + messagesToKeep.append(message) } + } else { + messagesToKeep.append(message) } } - self.deferredMessages.removeAll() + self.deferredMessages = messagesToKeep } #endif