Facing crashes with the below stack trace for ChipGroup, happening when a Chip is clicked-on/checked. Seems to be stuck in some kind of recursion on method onCheckedChanged.
Ignoring the chip group using ignoreViews does fix the issue but have not been able to locate the root cause.
Fatal Exception: java.lang.StackOverflowError: stack size 8192KB
at kotlinx.coroutines.intrinsics.CancellableKt.dispatcherFailure(Cancellable.kt:65)
at kotlinx.coroutines.intrinsics.CancellableKt.runSafely(Cancellable.kt:52)
at kotlinx.coroutines.intrinsics.CancellableKt.startCoroutineCancellable(Cancellable.kt:29)
at kotlinx.coroutines.intrinsics.CancellableKt.startCoroutineCancellable$default(Cancellable.kt:25)
at kotlinx.coroutines.CoroutineStart.invoke(CoroutineStart.kt:110)
at kotlinx.coroutines.AbstractCoroutine.start(AbstractCoroutine.kt:126)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch(Builders.common.kt:56)
at kotlinx.coroutines.BuildersKt.launch(BuildersKt.java:1)
at kotlinx.coroutines.BuildersKt__Builders_commonKt.launch$default(Builders.common.kt:47)
at kotlinx.coroutines.BuildersKt.launch$default(BuildersKt.java:1)
at io.shipbook.shipbooksdk.Appenders.SBCloudAppender.push(SBCloudAppender.kt:202)
at io.shipbook.shipbooksdk.LogManager.push(LogManager.kt:48)
at io.shipbook.shipbooksdk.Events.ActionEventManager.createActionEvent(ActionEventManager.kt:29)
at io.shipbook.shipbooksdk.Events.ActionEventManager.access$createActionEvent(ActionEventManager.kt:23)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:39)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at io.shipbook.shipbooksdk.Events.ActionEventManager$registerView$1.onCheckedChanged(ActionEventManager.kt:40)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:265)
at android.widget.CompoundButton.setChecked(CompoundButton.java:180)
at com.google.android.material.chip.Chip.setChecked(Chip.java:725)
at com.google.android.material.internal.CheckableGroup.uncheckInternal(CheckableGroup.java:177)
at com.google.android.material.internal.CheckableGroup.checkInternal(CheckableGroup.java:155)
at com.google.android.material.internal.CheckableGroup.access$000(CheckableGroup.java:43)
at com.google.android.material.internal.CheckableGroup$1.onCheckedChanged(CheckableGroup.java:82)
at com.google.android.material.internal.CheckableGroup$1.onCheckedChanged(CheckableGroup.java:79)
at com.google.android.material.chip.Chip$2.onCheckedChanged(Chip.java:262)
at android.widget.CompoundButton.setChecked(CompoundButton.java:180)
at com.google.android.material.chip.Chip.setChecked(Chip.java:725)
at android.widget.CompoundButton.toggle(CompoundButton.java:135)
at android.widget.CompoundButton.performClick(CompoundButton.java:140)
at android.view.View.performClickInternal(View.java:7166)
at android.view.View.access$3500(View.java:819)
at android.view.View$PerformClick.run(View.java:27682)
at android.os.Handler.handleCallback(Handler.java:883)
at android.os.Handler.dispatchMessage(Handler.java:100)
at android.os.Looper.loop(Looper.java:224)
at android.app.ActivityThread.main(ActivityThread.java:7592)
at java.lang.reflect.Method.invoke(Method.java)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Seems like that it is a problem with the way that ChipGroup works. Due to the fact that it is google that did this library we will try to check it further.
Facing crashes with the below stack trace for
ChipGroup
, happening when aChip
is clicked-on/checked. Seems to be stuck in some kind of recursion on methodonCheckedChanged
.Ignoring the chip group using
ignoreViews
does fix the issue but have not been able to locate the root cause.