Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[BUG] TextFieldLayoutKt.placeWithLabel, offset(10) is out of bounds [0, 9]. #9858

Closed
kk-atom opened this issue Jan 6, 2025 · 10 comments · Fixed by #10036
Closed

[BUG] TextFieldLayoutKt.placeWithLabel, offset(10) is out of bounds [0, 9]. #9858

kk-atom opened this issue Jan 6, 2025 · 10 comments · Fixed by #10036
Labels
bug triaged Issue has been reviewed by Stripe and is being tracked internally

Comments

@kk-atom
Copy link

kk-atom commented Jan 6, 2025

v21.0.1

Fatal Exception: java.lang.IllegalArgumentException: offset(10) is out of bounds [0, 9]
       at androidx.compose.ui.text.MultiParagraph.requireIndexInRangeInclusiveEnd(MultiParagraph.kt:913)
       at androidx.compose.ui.text.MultiParagraph.getCursorRect(MultiParagraph.kt:748)
       at androidx.compose.ui.text.TextLayoutResult.getCursorRect(TextLayoutResult.kt:553)
       at androidx.compose.foundation.text.TextFieldScrollKt.getCursorRectInScroller(TextFieldScroll.kt:221)
       at androidx.compose.foundation.text.TextFieldScrollKt.access$getCursorRectInScroller(TextFieldScroll.kt:1)
       at androidx.compose.foundation.text.HorizontalScrollLayoutModifier$measure$1.invoke(HorizontalScrollLayoutModifier.java:193)
       at androidx.compose.foundation.text.HorizontalScrollLayoutModifier$measure$1.invoke(HorizontalScrollLayoutModifier.java:192)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:270)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:247)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeWithLayer(Placeable.kt:646)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeWithLayer$default(Placeable.kt:327)
       at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier$measure$1.invoke(SimpleGraphicsLayerModifier.java:648)
       at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier$measure$1.invoke(SimpleGraphicsLayerModifier.java:647)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:270)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:247)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:609)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:232)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(SizeNode.java:840)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(SizeNode.java:839)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:270)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:247)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:609)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:232)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(SizeNode.java:840)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(SizeNode.java:839)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:270)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:247)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.java:621)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:565)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:552)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:503)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:502)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:258)
       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-MLgxB_4(LayoutNodeLayoutDelegate.kt:871)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeSelf-MLgxB_4(LayoutNodeLayoutDelegate.kt:839)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:765)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:621)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50$default(Placeable.kt:259)
       at androidx.compose.foundation.layout.BoxKt.placeInBox(Box.kt:223)
       at androidx.compose.foundation.layout.BoxKt.access$placeInBox(Box.kt:1)
       at androidx.compose.foundation.layout.BoxMeasurePolicy$measure$2.invoke(Box.kt:162)
       at androidx.compose.foundation.layout.BoxMeasurePolicy$measure$2.invoke(Box.kt:161)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.java:429)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.java:424)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:503)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:502)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:258)
       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:457)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:627)
       at androidx.compose.ui.node.InnerNodeCoordinator.onAfterPlaceAt(InnerNodeCoordinator.kt:182)
       at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:169)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:609)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:232)
       at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(PaddingNode.java:420)
       at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(PaddingNode.java:418)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:270)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:247)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.java:621)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:565)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:552)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:503)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:502)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:258)
       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-MLgxB_4(LayoutNodeLayoutDelegate.kt:871)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeSelf-MLgxB_4(LayoutNodeLayoutDelegate.kt:839)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.placeAt-f8xVGno(LayoutNodeLayoutDelegate.kt:765)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:609)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:232)
       at com.stripe.android.uicore.elements.compat.TextFieldLayoutKt.placeWithLabel(TextFieldLayout.kt:437)
       at com.stripe.android.uicore.elements.compat.TextFieldLayoutKt.access$placeWithLabel(TextFieldLayout.kt:1)
       at com.stripe.android.uicore.elements.compat.TextFieldMeasurePolicy.measure_3p2s80s$lambda$6(TextFieldMeasurePolicy.java:216)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:223)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.java:429)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$layoutChildrenBlock$1.invoke(LayoutNodeLayoutDelegate.java:424)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:503)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:502)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:258)
       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:457)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.onNodePlaced$ui_release(LayoutNodeLayoutDelegate.kt:627)
       at androidx.compose.ui.node.InnerNodeCoordinator.onAfterPlaceAt(InnerNodeCoordinator.kt:182)
       at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:169)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.java:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.java:621)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:565)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(LayoutNodeLayoutDelegate.java:552)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.java:2441)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:502)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:258)
       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-MLgxB_4(LayoutNodeLayoutDelegate.kt:871)
       at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.replace(LayoutNodeLayoutDelegate.kt:889)
       at androidx.compose.ui.node.LayoutNode.replace$ui_release(LayoutNode.kt:987)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:576)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded$default(MeasureAndLayoutDelegate.kt:534)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:390)
       at androidx.compose.ui.platform.AndroidComposeView.onLayout(AndroidComposeView.android.kt:1402)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at androidx.compose.ui.platform.AbstractComposeView.internalOnLayout$ui_release(ComposeView.android.kt:329)
       at androidx.compose.ui.platform.AbstractComposeView.onLayout(ComposeView.android.kt:320)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1891)
       at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1729)
       at android.widget.LinearLayout.onLayout(LinearLayout.java:1638)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1891)
       at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1729)
       at android.widget.LinearLayout.onLayout(LinearLayout.java:1638)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at com.android.internal.policy.DecorView.onLayout(DecorView.java:862)
       at android.view.View.layout(View.java:25346)
       at android.view.ViewGroup.layout(ViewGroup.java:6586)
       at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:4879)
       at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4188)
       at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2992)
       at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10469)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1671)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1680)
       at android.view.Choreographer.doCallbacks(Choreographer.java:1191)
       at android.view.Choreographer.doFrame(Choreographer.java:1063)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1650)
       at android.os.Handler.handleCallback(Handler.java:958)
       at android.os.Handler.dispatchMessage(Handler.java:99)
       at android.os.Looper.loopOnce(Looper.java:222)
       at android.os.Looper.loop(Looper.java:314)
       at android.app.ActivityThread.main(ActivityThread.java:8716)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:565)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1081)
@kk-atom kk-atom added the bug label Jan 6, 2025
@seanzhang-stripe
Copy link
Contributor

Hi @kk-atom can you share with me the steps to reproduce the problem? If it's from a crash report. kindly provide the language, location, device information, and anything else that could help us investigate the problem.

@kk-atom
Copy link
Author

kk-atom commented Jan 6, 2025

Crash from Crashlytics, idk the steps. I am using v21.0.1 for a month now, this is the first crash.
App is for Greece market. User phone number prefix is 30.
Xiaomi, Poco M4 5G, Android 14.

@yuki-stripe yuki-stripe added the triaged Issue has been reviewed by Stripe and is being tracked internally label Jan 7, 2025
@LWFLBB
Copy link

LWFLBB commented Jan 16, 2025

Hi @kk-atom can you share with me the steps to reproduce the problem? If it's from a crash report. kindly provide the language, location, device information, and anything else that could help us investigate the problem.

Hello, you can restore the problem by following my steps. Copy a complete card number and paste it into the bank card input box. The formatting error causes the crash.

@seanzhang-stripe
Copy link
Contributor

Hi @LWFLBB Thanks for input.

Are you able to reproduce the problem with PaymentSheet ? or any other UI componenets?

@LWFLBB
Copy link

LWFLBB commented Jan 16, 2025

Hi @seanzhang-stripe , this is the video I reproduced https://youtube.com/shorts/WGovgolIZMU?feature=share ,My app uses flutter_stripe:^11.2.0 version, the associated Stripe React Native version is 0.39.0, the device is Xiaomi, and the card number I copied and pasted is 6212263602069352222

@seanzhang-stripe
Copy link
Contributor

@LWFLBB Thanks.

I don't have a Xiaomi device with me right now and this problem isn't reproducible on an Android emulator. Can you share with me the details about the device model and OS version?

The number that you posted earlier doesn't belong to a Stripe test card. If it's a real card number, I'd recommend you remove it from your post. You should also remove the video as soon as possible.

@LWFLBB
Copy link

LWFLBB commented Jan 16, 2025

@seanzhang-stripe
Device model: 23013RK75C
System version: Android 14, level 34
ROM: XiaoMi/MIUI
CPU architecture: arm64-v8a
Thank you for your reminder. This is the UnionPay card number I simulated.

@LWFLBB
Copy link

LWFLBB commented Jan 16, 2025

Hi @seanzhang-stripe , update, not only Xiaomi devices, but also other devices such as Huawei and vivo have the same problem

@yogurtearl
Copy link

yogurtearl commented Jan 27, 2025

If you paste the 19 digit union pay test card into the stripe payment sheet, you will get a similar crash.

I reproduced on an API 35 emulator.

I think pasting the number, not typing it in, is key to reproducing it.

Stripe version: 21.3.2
Compose version: 1.8.0-alpha08

          Fatal Exception: java.lang.IllegalArgumentException: offset(23) is out of bounds [0, 22]
       at androidx.compose.ui.text.internal.InlineClassHelperKt.throwIllegalArgumentException(InlineClassHelper.kt:53)
       at androidx.compose.ui.text.MultiParagraph.requireIndexInRangeInclusiveEnd(MultiParagraph.kt:1295)
       at androidx.compose.ui.text.MultiParagraph.getCursorRect(MultiParagraph.kt:829)
       at androidx.compose.ui.text.TextLayoutResult.getCursorRect(TextLayoutResult.kt:523)
       at androidx.compose.foundation.text.TextFieldScrollKt.getCursorRectInScroller(TextFieldScroll.kt:242)
       at androidx.compose.foundation.text.TextFieldScrollKt.access$getCursorRectInScroller(TextFieldScroll.kt:1)
       at androidx.compose.foundation.text.HorizontalScrollLayoutModifier$measure$1.invoke(TextFieldScroll.kt:213)
       at androidx.compose.foundation.text.HorizontalScrollLayoutModifier$measure$1.invoke(TextFieldScroll.kt:211)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:261)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:236)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeWithLayer(Placeable.kt:631)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeWithLayer$default(Placeable.kt:314)
       at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier$measure$1.invoke(GraphicsLayerModifier.kt:644)
       at androidx.compose.ui.graphics.SimpleGraphicsLayerModifier$measure$1.invoke(GraphicsLayerModifier.kt:643)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:261)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:236)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:586)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:224)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(Size.kt:866)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(Size.kt:866)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:261)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:236)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:586)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:224)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(Size.kt:866)
       at androidx.compose.foundation.layout.SizeNode$measure$1.invoke(Size.kt:866)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:261)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:236)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:600)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:328)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:315)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:501)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:460)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:244)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:124)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:94)
       at androidx.compose.ui.node.MeasurePassDelegate.placeOuterCoordinator-MLgxB_4(MeasurePassDelegate.kt:650)
       at androidx.compose.ui.node.MeasurePassDelegate.placeSelf-MLgxB_4(MeasurePassDelegate.kt:618)
       at androidx.compose.ui.node.MeasurePassDelegate.placeAt-f8xVGno(MeasurePassDelegate.kt:545)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:600)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50$default(Placeable.kt:251)
       at androidx.compose.foundation.layout.BoxKt.placeInBox(Box.kt:220)
       at androidx.compose.foundation.layout.BoxKt.access$placeInBox(Box.kt:1)
       at androidx.compose.foundation.layout.BoxMeasurePolicy$measure$2.invoke(Box.kt:157)
       at androidx.compose.foundation.layout.BoxMeasurePolicy$measure$2.invoke(Box.kt:156)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.MeasurePassDelegate$layoutChildrenBlock$1.invoke(MeasurePassDelegate.kt:175)
       at androidx.compose.ui.node.MeasurePassDelegate$layoutChildrenBlock$1.invoke(MeasurePassDelegate.kt:172)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:501)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:460)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:244)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:124)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:81)
       at androidx.compose.ui.node.MeasurePassDelegate.layoutChildren(MeasurePassDelegate.kt:205)
       at androidx.compose.ui.node.MeasurePassDelegate.onNodePlaced$ui_release(MeasurePassDelegate.kt:385)
       at androidx.compose.ui.node.InnerNodeCoordinator.onAfterPlaceAt(InnerNodeCoordinator.kt:164)
       at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:153)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:586)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:224)
       at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:407)
       at androidx.compose.foundation.layout.PaddingNode$measure$1.invoke(Padding.kt:405)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.onAfterPlaceAt(LayoutModifierNodeCoordinator.kt:261)
       at androidx.compose.ui.node.LayoutModifierNodeCoordinator.placeAt-f8xVGno(LayoutModifierNodeCoordinator.kt:236)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:600)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:328)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:315)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:501)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:460)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:244)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:124)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:94)
       at androidx.compose.ui.node.MeasurePassDelegate.placeOuterCoordinator-MLgxB_4(MeasurePassDelegate.kt:650)
       at androidx.compose.ui.node.MeasurePassDelegate.placeSelf-MLgxB_4(MeasurePassDelegate.kt:618)
       at androidx.compose.ui.node.MeasurePassDelegate.placeAt-f8xVGno(MeasurePassDelegate.kt:545)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative(Placeable.kt:586)
       at androidx.compose.ui.layout.Placeable$PlacementScope.placeRelative$default(Placeable.kt:224)
       at com.stripe.android.uicore.elements.compat.TextFieldLayoutKt.placeWithLabel(TextFieldLayout.kt:437)
       at com.stripe.android.uicore.elements.compat.TextFieldLayoutKt.access$placeWithLabel(TextFieldLayout.kt:1)
       at com.stripe.android.uicore.elements.compat.TextFieldMeasurePolicy.measure_3p2s80s$lambda$6(TextFieldLayout.kt:216)
       at com.stripe.android.uicore.elements.compat.TextFieldMeasurePolicy.$r8$lambda$3VcN6XgpA6OZqgJsSeyka-U5G0A()
       at com.stripe.android.uicore.elements.compat.TextFieldMeasurePolicy$$ExternalSyntheticLambda0.invoke(D8$$SyntheticClass)
       at androidx.compose.ui.node.LookaheadCapablePlaceable$layout$1.placeChildren(LookaheadDelegate.kt:245)
       at androidx.compose.ui.node.MeasurePassDelegate$layoutChildrenBlock$1.invoke(MeasurePassDelegate.kt:175)
       at androidx.compose.ui.node.MeasurePassDelegate$layoutChildrenBlock$1.invoke(MeasurePassDelegate.kt:172)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:501)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:460)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:244)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:124)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutSnapshotReads$ui_release(OwnerSnapshotObserver.kt:81)
       at androidx.compose.ui.node.MeasurePassDelegate.layoutChildren(MeasurePassDelegate.kt:205)
       at androidx.compose.ui.node.MeasurePassDelegate.onNodePlaced$ui_release(MeasurePassDelegate.kt:385)
       at androidx.compose.ui.node.InnerNodeCoordinator.onAfterPlaceAt(InnerNodeCoordinator.kt:164)
       at androidx.compose.ui.node.InnerNodeCoordinator.placeAt-f8xVGno(InnerNodeCoordinator.kt:153)
       at androidx.compose.ui.layout.Placeable.access$placeAt-f8xVGno(Placeable.kt:35)
       at androidx.compose.ui.layout.Placeable$PlacementScope.place-70tqf50(Placeable.kt:600)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:328)
       at androidx.compose.ui.node.MeasurePassDelegate$placeOuterCoordinatorBlock$1.invoke(MeasurePassDelegate.kt:315)
       at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2496)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:460)
       at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:244)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:124)
       at androidx.compose.ui.node.OwnerSnapshotObserver.observeLayoutModifierSnapshotReads$ui_release(OwnerSnapshotObserver.kt:94)
       at androidx.compose.ui.node.MeasurePassDelegate.placeOuterCoordinator-MLgxB_4(MeasurePassDelegate.kt:650)
       at androidx.compose.ui.node.MeasurePassDelegate.replace(MeasurePassDelegate.kt:670)
       at androidx.compose.ui.node.LayoutNode.replace$ui_release(LayoutNode.kt:997)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded(MeasureAndLayoutDelegate.kt:577)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureAndRelayoutIfNeeded$default(MeasureAndLayoutDelegate.kt:532)
       at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureAndLayout(MeasureAndLayoutDelegate.kt:387)
       at androidx.compose.ui.platform.AndroidComposeView.onLayout(AndroidComposeView.android.kt:1663)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at androidx.compose.ui.platform.AbstractComposeView.internalOnLayout$ui_release(ComposeView.android.kt:320)
       at androidx.compose.ui.platform.AbstractComposeView.onLayout(ComposeView.android.kt:310)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1891)
       at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1729)
       at android.widget.LinearLayout.onLayout(LinearLayout.java:1638)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.widget.LinearLayout.setChildFrame(LinearLayout.java:1891)
       at android.widget.LinearLayout.layoutVertical(LinearLayout.java:1729)
       at android.widget.LinearLayout.onLayout(LinearLayout.java:1638)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.widget.FrameLayout.layoutChildren(FrameLayout.java:332)
       at android.widget.FrameLayout.onLayout(FrameLayout.java:270)
       at com.android.internal.policy.DecorView.onLayout(DecorView.java:758)
       at android.view.View.layout(View.java:25374)
       at android.view.ViewGroup.layout(ViewGroup.java:6421)
       at android.view.ViewRootImpl.performLayout(ViewRootImpl.java:4899)
       at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:4040)
       at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:2917)
       at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:10324)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1406)
       at android.view.Choreographer$CallbackRecord.run(Choreographer.java:1415)
       at android.view.Choreographer.doCallbacks(Choreographer.java:1015)
       at android.view.Choreographer.doFrame(Choreographer.java:945)
       at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:1389)
       at android.os.Handler.handleCallback(Handler.java:959)
       at android.os.Handler.dispatchMessage(Handler.java:100)
       at android.os.Looper.loopOnce(Looper.java:232)
       at android.os.Looper.loop(Looper.java:317)
       at android.app.ActivityThread.main(ActivityThread.java:8705)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:580)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:886)

@seanzhang-stripe
Copy link
Contributor

Hi @yogurtearl Thanks for the input. I can reproduce the same by pasting the 19-digit card number in PaymentSheet.

I'll follow up this with the team.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug triaged Issue has been reviewed by Stripe and is being tracked internally
Projects
None yet
Development

Successfully merging a pull request may close this issue.

5 participants