From b847d8cf36522383832248ef0c9d2648be6508d6 Mon Sep 17 00:00:00 2001 From: Benoit Marty Date: Tue, 5 Jul 2022 12:06:49 +0200 Subject: [PATCH] Fix ConcurrentModificationException on BackgroundDetectionObserver --- .../android/sdk/internal/util/BackgroundDetectionObserver.kt | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/util/BackgroundDetectionObserver.kt b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/util/BackgroundDetectionObserver.kt index 2dd16d8375..901d0eca8f 100644 --- a/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/util/BackgroundDetectionObserver.kt +++ b/matrix-sdk-android/src/main/java/org/matrix/android/sdk/internal/util/BackgroundDetectionObserver.kt @@ -19,6 +19,7 @@ package org.matrix.android.sdk.internal.util import androidx.lifecycle.DefaultLifecycleObserver import androidx.lifecycle.LifecycleOwner import timber.log.Timber +import java.util.concurrent.CopyOnWriteArraySet internal interface BackgroundDetectionObserver : DefaultLifecycleObserver { val isInBackground: Boolean @@ -37,7 +38,7 @@ internal class DefaultBackgroundDetectionObserver : BackgroundDetectionObserver override var isInBackground: Boolean = true private set - private val listeners = LinkedHashSet() + private val listeners = CopyOnWriteArraySet() override fun register(listener: BackgroundDetectionObserver.Listener) { listeners.add(listener)