Fix ConcurrentModificationException on BackgroundDetectionObserver

This commit is contained in:
Benoit Marty 2022-07-05 12:06:49 +02:00
parent 35325db407
commit b847d8cf36

View file

@ -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<BackgroundDetectionObserver.Listener>()
private val listeners = CopyOnWriteArraySet<BackgroundDetectionObserver.Listener>()
override fun register(listener: BackgroundDetectionObserver.Listener) {
listeners.add(listener)