Change theme
Help
Press space for more information.
Show links for this issue (Shortcut: i, l)
Copy issue ID
Previous Issue (Shortcut: k)
Next Issue (Shortcut: j)
Sign in to use full features.
Vote: I am impacted
Notification menu
Refresh (Shortcut: Shift+r)
Go home (Shortcut: u)
Pending code changes (auto-populated)
View issue level access limits(Press Alt + Right arrow for more information)
Unintended behavior
View staffing
Description
Sample code:
If you insert anywhere in the model list adapterlist updates and renders appropriately. If you remove from the end or beginning of the list it crashes.
Note: Converting to VerticalScroller + Column avoids any crashes and works with otherwise identical code.
Stacktrace:
2020-04-16 16:28:46.485 28839-28839/com.google.gvaish.compose.playstore E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.google.gvaish.compose.playstore, PID: 28839
java.lang.IndexOutOfBoundsException: Index: 5, Size: 5
at java.util.ArrayList.get(ArrayList.java:411)
at androidx.compose.frames.ModelList.get(FrameContainers.kt:53)
at androidx.ui.foundation.ListState$composeChildForDataIndex$3.invoke(AdapterList.kt:451)
at androidx.ui.foundation.ListState$composeChildForDataIndex$3.invoke(AdapterList.kt)
at androidx.compose.internal.RestartableFunction.invoke(RestartableFunction.kt:116)
at androidx.compose.internal.RestartableFunction.invoke(RestartableFunction.kt)
at androidx.compose.ComposerKt.invokeComposable(Composer.kt:1892)
at androidx.compose.Recomposer.recompose(Recomposer.kt:77)
at androidx.compose.Recomposer.access$recompose$1(Recomposer.kt)
at androidx.compose.Recomposer$Companion.recompose$compose_runtime_release(Recomposer.kt:56)
at androidx.compose.Composition.compose(Composition.kt:65)
at androidx.compose.Composition.compose(Composition.kt:57)
at androidx.ui.core.WrapperKt.subcomposeInto(Wrapper.kt:267)
at androidx.ui.foundation.ListState.composeChildForDataIndex-N7Qnm20(AdapterList.kt:450)
at androidx.ui.foundation.ListState.recomposeAllChildren(AdapterList.kt:360)
at androidx.ui.foundation.ListState.recomposeIfAttached(AdapterList.kt:354)
at androidx.ui.foundation.AdapterListKt.AdapterList(AdapterList.kt:487)
at androidx.ui.foundation.AdapterListKt$AdapterList$4.invoke(AdapterList.kt)
at androidx.ui.foundation.AdapterListKt$AdapterList$4.invoke(AdapterList.kt)
at androidx.compose.RecomposeScope.compose(Composer.kt:211)
at androidx.compose.Composer.composeScope(Composer.kt:1258)
at androidx.compose.Composer.recomposeComponentRange(Composer.kt:1204)
at androidx.compose.Composer.skipCurrentGroup(Composer.kt:1253)
at androidx.compose.Composer.recompose(Composer.kt:1322)
at androidx.compose.Recomposer.performRecompose(Recomposer.kt:107)
at androidx.compose.Recomposer.dispatchRecomposes(Recomposer.kt:135)
at androidx.compose.AndroidRecomposer.access$dispatchRecomposes$1(AndroidRecomposer.kt)
at androidx.compose.AndroidRecomposer$frameCallback$1.doFrame(AndroidRecomposer.kt:27)
at android.view.Choreographer$CallbackRecord.run(Choreographer.java:872)
at android.view.Choreographer.doCallbacks(Choreographer.java:686)
at android.view.Choreographer.doFrame(Choreographer.java:618)
at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:860)
at android.os.Handler.handleCallback(Handler.java:751)
at android.os.Handler.dispatchMessage(Handler.java:95)
at android.os.Looper.loop(Looper.java:154)
at android.app.ActivityThread.main(ActivityThread.java:6121)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:889)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:779)