From f679b8702c9671a8a892e99544ca256efb1a2132 Mon Sep 17 00:00:00 2001 From: Jeasmine Nahui Date: Fri, 9 Jul 2021 17:32:08 -0300 Subject: [PATCH] Fix IAM preview message id NPE * messageDisplayQueue.contains was returning NPE in a preview case, due to message id being null * message can be null if preview display fails * Add message null check and preview check --- .../src/main/java/com/onesignal/OSInAppMessageController.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/OneSignalSDK/onesignal/src/main/java/com/onesignal/OSInAppMessageController.java b/OneSignalSDK/onesignal/src/main/java/com/onesignal/OSInAppMessageController.java index a13151c5a1..ff76305245 100644 --- a/OneSignalSDK/onesignal/src/main/java/com/onesignal/OSInAppMessageController.java +++ b/OneSignalSDK/onesignal/src/main/java/com/onesignal/OSInAppMessageController.java @@ -612,8 +612,8 @@ private void dismissCurrentMessage(@Nullable OSInAppMessage message) { inAppMessageShowing = false; synchronized (messageDisplayQueue) { - if (messageDisplayQueue.size() > 0) { - if (message != null && !messageDisplayQueue.contains(message)) { + if (message != null && !message.isPreview && messageDisplayQueue.size() > 0) { + if (!messageDisplayQueue.contains(message)) { OneSignal.onesignalLog(OneSignal.LOG_LEVEL.DEBUG, "Message already removed from the queue!"); return; } else {