badoo / MVICore

MVI framework with events, time-travel, and more
https://badoo.github.io/MVICore/
Other
1.27k stars 90 forks source link

IndexOutOfBoundsException in BaseFeature - DisposableCollection #153

Open nedimonvam opened 2 years ago

nedimonvam commented 2 years ago

Happens rarely on a Bootstrapper Wish emit and leads to crash

Caused by java.lang.IndexOutOfBoundsException Index: 2, Size: 2

java.util.ArrayList.remove (ArrayList.java:503) kotlin.collections.CollectionsKt__MutableCollectionsKt.filterInPlace$CollectionsKt__MutableCollectionsKt (MutableCollections.kt:295) kotlin.collections.CollectionsKt__MutableCollectionsKt.removeAll (MutableCollections.kt:269) kotlin.collections.CollectionsKt.removeAll (CollectionsKt.java) com.badoo.mvicore.feature.internal.DisposableCollection.add (DisposableCollection.kt:19) com.badoo.mvicore.feature.internal.DisposableCollection.plusAssign (DisposableCollection.kt:25) com.badoo.mvicore.feature.BaseFeature$ActorWrapper.processAction (BaseFeature.kt:140) com.badoo.mvicore.feature.BaseFeature.invokeActor (BaseFeature.kt:115) com.badoo.mvicore.feature.BaseFeature.access$invokeActor (BaseFeature.kt:20) com.badoo.mvicore.feature.BaseFeature$1.accept (BaseFeature.kt:70) io.reactivex.internal.observers.LambdaObserver.onNext (LambdaObserver.java:63) io.reactivex.subjects.PublishSubject$PublishDisposable.onNext (PublishSubject.java:308) io.reactivex.subjects.PublishSubject.onNext (PublishSubject.java:228) com.badoo.mvicore.extension.RxKt$asConsumer$1.accept (Rx.kt:21) com.badoo.mvicore.feature.BaseFeature$2$1$1.accept (BaseFeature.kt:81) io.reactivex.internal.observers.LambdaObserver.onNext (LambdaObserver.java:63) io.reactivex.internal.operators.observable.ObservableMap$MapObserver.onNext (ObservableMap.java:62) io.reactivex.internal.operators.observable.ObservableDistinctUntilChanged$DistinctUntilChangedObserver.onNext (ObservableDistinctUntilChanged.java:85) io.reactivex.internal.util.NotificationLite.accept (NotificationLite.java:246) io.reactivex.subjects.BehaviorSubject$BehaviorDisposable.test (BehaviorSubject.java:569) io.reactivex.subjects.BehaviorSubject$BehaviorDisposable.emitNext (BehaviorSubject.java:564) io.reactivex.subjects.BehaviorSubject.onNext (BehaviorSubject.java:268)

Kanunnikoff commented 2 years ago

Having a such problem too.