Fix ConcurrentModificationException on BackgroundDetectionObserver

This commit is contained in:
Benoit Marty 2022-07-05 12:06:49 +02:00 committed by Adam Brown
parent fcc1838aed
commit 41a3a07bf6
2 changed files with 3 additions and 1 deletions

1
changelog.d/6469.bugfix Normal file
View File

@ -0,0 +1 @@
Fix ConcurrentModificationException on BackgroundDetectionObserver

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)