jeziellago / compose-markdown

Markdown Text for Android Jetpack Compose 📋.
MIT License
590 stars 50 forks source link

Crash with StringIndexOutOfBoundsException: begin 0, end -2, length 17 #116

Closed feiandytan closed 3 months ago

feiandytan commented 3 months ago

I am using MarkdownText in a lazy column, and enable truncateOnTextOverflow. When scrolling the column, the app will crash.

compose-markdown version: 0.5.0 AGP version: 8.4.0 Compose version: 2024.05.00 Android OS version: 13.0

Here is the exception from LogCat:

FATAL EXCEPTION: main
                                                                                                    Process: com.sap.cloud.mobile.joule.sf.demo, PID: 7396
                                                                                                    java.lang.StringIndexOutOfBoundsException: begin 0, end -2, length 17
                                                                                                        at java.lang.String.checkBoundsBeginEnd(String.java:3942)
                                                                                                        at java.lang.String.substring(String.java:2467)
                                                                                                        at android.text.SpannableStringInternal.<init>(SpannableStringInternal.java:37)
                                                                                                        at android.text.SpannableString.<init>(SpannableString.java:48)
                                                                                                        at android.text.SpannableString.subSequence(SpannableString.java:68)
                                                                                                        at dev.jeziellago.compose.markdowntext.TextAppearanceExtKt$enableTextOverflow$$inlined$doOnNextLayout$1.onLayoutChange(View.kt:417)
                                                                                                        at android.view.View.layout(View.java:23711)
                                                                                                        at androidx.compose.ui.viewinterop.AndroidViewHolder.onLayout(AndroidViewHolder.android.kt:258)
                                                                                                        at android.view.View.layout(View.java:23693)
                                                                                                        at android.view.ViewGroup.layout(ViewGroup.java:6413)
                                                                                                        at androidx.compose.ui.viewinterop.AndroidViewHolder_androidKt.layoutAccordingTo(AndroidViewHolder.android.kt:598)
                                                                                                        at androidx.compose.ui.viewinterop.AndroidViewHolder_androidKt.access$layoutAccordingTo(AndroidViewHolder.android.kt:1)
                                                                                                        at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$5$measure$2.invoke(AndroidViewHolder.android.kt:410)
                                                                                                        at androidx.compose.ui.viewinterop.AndroidViewHolder$layoutNode$1$5$measure$2.invoke(AndroidViewHolder.android.kt:409)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:365)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:360)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:83)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.layoutChildren(LayoutNodeLayoutDelegate.kt:393)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:551)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:160)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:417)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:203)
                                                                                                        at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:403)
                                                                                                        at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:401)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:167)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50$default(Placeable.kt:230)
                                                                                                        at androidx.compose.foundation.layout.WrapContentNode$measure$1.invoke(Size.kt:1019)
                                                                                                        at androidx.compose.foundation.layout.WrapContentNode$measure$1.invoke(Size.kt:1011)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:167)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
2024-08-22 10:22:57.092  7396-7396  AndroidRuntime          com.sap.cloud.mobile.joule.sf.demo   E      at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:489)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:483)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:98)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeOuterCoordinator-f8xVGno(LayoutNodeLayoutDelegate.kt:753)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:724)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place(Placeable.kt:425)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place$default(Placeable.kt:217)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurementHelper.placeHelper(RowColumnMeasurementHelper.kt:386)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:87)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:86)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:365)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:360)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:83)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.layoutChildren(LayoutNodeLayoutDelegate.kt:393)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:551)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:160)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:489)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:483)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:98)
2024-08-22 10:22:57.093  7396-7396  AndroidRuntime          com.sap.cloud.mobile.joule.sf.demo   E      at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeOuterCoordinator-f8xVGno(LayoutNodeLayoutDelegate.kt:753)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:724)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place(Placeable.kt:425)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place$default(Placeable.kt:217)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurementHelper.placeHelper(RowColumnMeasurementHelper.kt:381)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:87)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:86)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:365)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:360)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:83)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.layoutChildren(LayoutNodeLayoutDelegate.kt:393)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:551)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:160)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:489)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:483)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:98)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeOuterCoordinator-f8xVGno(LayoutNodeLayoutDelegate.kt:753)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:724)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place(Placeable.kt:425)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place$default(Placeable.kt:217)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurementHelper.placeHelper(RowColumnMeasurementHelper.kt:386)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:87)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:86)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
2024-08-22 10:22:57.094  7396-7396  AndroidRuntime          com.sap.cloud.mobile.joule.sf.demo   E      at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:365)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:360)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:83)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.layoutChildren(LayoutNodeLayoutDelegate.kt:393)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:551)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:160)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:489)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:483)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:98)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeOuterCoordinator-f8xVGno(LayoutNodeLayoutDelegate.kt:753)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:724)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place(Placeable.kt:425)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place$default(Placeable.kt:217)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurementHelper.placeHelper(RowColumnMeasurementHelper.kt:381)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:87)
                                                                                                        at androidx.compose.foundation.layout.RowColumnMeasurePolicy$measure$1.invoke(RowColumnImpl.kt:86)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:365)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.kt:360)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:83)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.layoutChildren(LayoutNodeLayoutDelegate.kt:393)
2024-08-22 10:22:57.095  7396-7396  AndroidRuntime          com.sap.cloud.mobile.joule.sf.demo   E      at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:551)
                                                                                                        at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:160)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:417)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:203)
                                                                                                        at androidx.compose.foundation.layout.FillNode$measure$1.invoke(Size.kt:704)
                                                                                                        at androidx.compose.foundation.layout.FillNode$measure$1.invoke(Size.kt:703)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:167)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:417)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:203)
                                                                                                        at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:403)
                                                                                                        at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:401)
                                                                                                        at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:107)
                                                                                                        at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:167)
                                                                                                        at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:33)
                                                                                                        at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:428)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:489)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.kt:483)
                                                                                                        at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
                                                                                                        at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
                                                                                                        at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:98)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeOuterCoordinator-f8xVGno(LayoutNodeLayoutDelegate.kt:753)
                                                                                                        at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.replace(LayoutNodeLayoutDelegate.kt:772)
                                                                                                        at androidx.compose.ui.node.LayoutNode.replace$ui_release(LayoutNode.kt:914)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:529)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded$default(MeasureAndLayoutDelegate.kt:491)
                                                                                                        at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:377)
                                                                                                        at androidx.compose.ui.platform.AndroidComposeView.measureAndLayout(AndroidComposeView.android.kt:971)
                                                                                                        at androidx.compose.ui.node.Owner.measureAndLayout$default(Owner.kt:228)
                                                                                                        at androidx.compose.ui.platform.AndroidComposeView.dispatchDraw(AndroidComposeView.android.kt:1224)
                                                                                                        at android.view.View.draw(View.java:23197)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22061)
                                                                                                        at android.view.ViewGroup.recreateChildDisplayList(ViewGroup.java:4513)
                                                                                                        at android.view.ViewGroup.dispatchGetDisplayList(ViewGroup.java:4486)
                                                                                                        at android.view.View.updateDisplayListIfDirty(View.java:22017)
                                                                                                        at android.view.ThreadedRenderer.updateViewTreeDisplayList(ThreadedRenderer.java:689)
                                                                                                        at android.view.ThreadedRenderer.updateRootDisplayList(ThreadedRenderer.java:695)
                                                                                                        at android.view.ThreadedRenderer.draw(ThreadedRenderer.java:793)
2024-08-22 10:22:57.095  7396-7396  AndroidRuntime          com.sap.cloud.mobile.joule.sf.demo   E      at android.view.ViewRootImpl.draw(ViewRootImpl.java:4670)
                                                                                                        at android.view.ViewRootImpl.performDraw(ViewRootImpl.java:4381)
                                                                                                        at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:3600)
                                                                                                        at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2328)
                                                                                                        at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:9087)
                                                                                                        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1231)
                                                                                                        at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1239)
                                                                                                        at android.view.Choreographer.doCallbacks(Choreographer.java:899)
                                                                                                        at android.view.Choreographer.doFrame(Choreographer.java:832)
                                                                                                        at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1214)
                                                                                                        at android.os.Handler.handleCallback(Handler.java:942)
                                                                                                        at android.os.Handler.dispatchMessage(Handler.java:99)
                                                                                                        at android.os.Looper.loopOnce(Looper.java:201)
                                                                                                        at android.os.Looper.loop(Looper.java:288)
                                                                                                        at android.app.ActivityThread.main(ActivityThread.java:7872)
                                                                                                        at java.lang.reflect.Method.invoke(Native Method)
                                                                                                        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)
                                                                                                        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936)