Closed
Description
What happened?
Fatal Exception: java.util.ConcurrentModificationException:
at java.util.ArrayList$Itr.next(ArrayList.java:860)
at com.onesignal.common.modeling.ModelStore.persist(ModelStore.kt:140)
at com.onesignal.common.modeling.ModelStore.addItem(ModelStore.kt:108)
at com.onesignal.common.modeling.ModelStore.addItem$default(ModelStore.kt:98)
at com.onesignal.common.modeling.ModelStore.add(ModelStore.kt:46)
at com.onesignal.common.modeling.IModelStore$DefaultImpls.add$default(IModelStore.kt:37)
at com.onesignal.core.internal.operations.impl.OperationRepo.internalEnqueue(OperationRepo.kt:76)
at com.onesignal.core.internal.operations.impl.OperationRepo.enqueue(OperationRepo.kt:60)
at com.onesignal.core.internal.operations.IOperationRepo$DefaultImpls.enqueue$default(IOperationRepo.kt:16)
at com.onesignal.core.internal.operations.listeners.SingletonModelStoreListener.onModelUpdated(SingletonModelStoreListener.kt:51)
at com.onesignal.common.modeling.SingletonModelStore$onModelUpdated$1.invoke(SingletonModelStore.kt:50)
at com.onesignal.common.modeling.SingletonModelStore$onModelUpdated$1.invoke(SingletonModelStore.kt:50)
at com.onesignal.common.events.EventProducer.fire(EventProducer.kt:44)
at com.onesignal.common.modeling.SingletonModelStore.onModelUpdated(SingletonModelStore.kt:50)
at com.onesignal.common.modeling.ModelStore$onChanged$1.invoke(ModelStore.kt:74)
at com.onesignal.common.modeling.ModelStore$onChanged$1.invoke(ModelStore.kt:74)
at com.onesignal.common.events.EventProducer.fire(EventProducer.kt:44)
at com.onesignal.common.modeling.ModelStore.onChanged(ModelStore.kt:74)
at com.onesignal.common.modeling.Model$notifyChanged$1.invoke(Model.kt:296)
at com.onesignal.common.modeling.Model$notifyChanged$1.invoke(Model.kt:296)
at com.onesignal.common.events.EventProducer.fire(EventProducer.kt:44)
at com.onesignal.common.modeling.Model.notifyChanged(Model.kt:296)
at com.onesignal.common.modeling.Model.notifyChanged(Model.kt:301)
at com.onesignal.common.modeling.Model.setOptAnyProperty(Model.kt:201)
at com.onesignal.common.modeling.Model.setOptAnyProperty$default(Model.kt:188)
at com.onesignal.common.modeling.MapModel.put(MapModel.kt:47)
at com.onesignal.common.modeling.MapModel.remove(MapModel.kt:8)
at com.onesignal.common.modeling.MapModel.put(MapModel.kt:8)
at com.onesignal.user.internal.UserManager.addTag(UserManager.kt:173)
at kotlinx.coroutines.flow.FlowKt__TransformKt$onEach$$inlined$unsafeTransform$1$2.emit(FlowKt__Transform.kt:223)
at kotlinx.coroutines.flow.StateFlowImpl.collect(StateFlow.kt:396)
at kotlinx.coroutines.flow.StateFlowImpl$collect$1.invokeSuspend(StateFlow.kt:1)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:235)
at kotlinx.coroutines.DispatchedTaskKt.resumeUnconfined(DispatchedTask.kt:191)
at kotlinx.coroutines.DispatchedTaskKt.dispatch(DispatchedTask.kt:163)
at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:474)
at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:508)
at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl$default(CancellableContinuationImpl.kt:497)
at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:368)
at kotlinx.coroutines.flow.StateFlowSlot.makePending(StateFlowSlot.java:284)
at kotlinx.coroutines.flow.StateFlowImpl.updateState(StateFlow.kt:349)
at kotlinx.coroutines.flow.StateFlowImpl.compareAndSet(StateFlow.kt:319)
at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:15)
at kotlinx.coroutines.flow.internal.SafeCollectorKt$emitFun$1.invoke(SafeCollector.kt:15)
at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:87)
at kotlinx.coroutines.flow.internal.SafeCollector.emit(SafeCollector.kt:66)
at androidx.datastore.core.SingleProcessDataStore$data$1$invokeSuspend$$inlined$map$1$2.emit(SingleProcessDataStore.java:137)
at kotlinx.coroutines.flow.FlowKt__LimitKt$dropWhile$1$1.emit(Limit.kt:40)
at kotlinx.coroutines.flow.StateFlowImpl.collect(StateFlow.kt:396)
at kotlinx.coroutines.flow.FlowKt__LimitKt$dropWhile$$inlined$unsafeFlow$1.collect(SafeCollector.common.kt:115)
at androidx.datastore.core.SingleProcessDataStore$data$1$invokeSuspend$$inlined$map$1.collect(SingleProcessDataStore.java:114)
at kotlinx.coroutines.flow.FlowKt__CollectKt.emitAll(FlowKt__Collect.kt:109)
at kotlinx.coroutines.flow.FlowKt.emitAll(Flow.kt:1)
at androidx.datastore.core.SingleProcessDataStore$data$1.invokeSuspend(SingleProcessDataStore.kt:117)
at androidx.datastore.core.SingleProcessDataStore$data$1.invoke(SingleProcessDataStore.kt:13)
at androidx.datastore.core.SingleProcessDataStore$data$1.invoke(SingleProcessDataStore.kt:13)
at kotlinx.coroutines.flow.SafeFlow.collectSafely(SafeFlow.java:61)
at kotlinx.coroutines.flow.AbstractFlow.collect(AbstractFlow.java:230)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:33)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:108)
at android.os.Handler.handleCallback(Handler.java:938)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:257)
at android.app.ActivityThread.main(ActivityThread.java:8185)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:626)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1015)
Steps to reproduce?
On using
OneSignal.User.addTag
What did you expect to happen?
Not crash the app
OneSignal Android SDK version
5.0.2
Android version
11, 10
Specific Android models
No response
Relevant log output
No response
Code of Conduct
- I agree to follow this project's Code of Conduct