wordpress-mobile / AztecEditor-Android

A reusable native Android rich text editor component.
Mozilla Public License 2.0
693 stars 115 forks source link

[Crash Report] java.lang.IndexOutOfBoundsException when pasting text #611

Open daniloercoli opened 6 years ago

daniloercoli commented 6 years ago
Fatal Exception: java.lang.IndexOutOfBoundsException: 687, -685
       at android.text.PackedIntVector.deleteAt(PackedIntVector.java:222)
       at android.text.DynamicLayout.reflow(DynamicLayout.java:317)
       at android.text.DynamicLayout.-wrap0(Unknown Source)
       at android.text.DynamicLayout$ChangeWatcher.reflow(DynamicLayout.java:750)
       at android.text.DynamicLayout$ChangeWatcher.onSpanChanged(DynamicLayout.java:779)
       at android.text.SpannableStringBuilder.sendSpanChanged(SpannableStringBuilder.java:1296)
       at android.text.SpannableStringBuilder.sendToSpanWatchers(SpannableStringBuilder.java:651)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:581)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:504)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:502)
       at android.widget.TextView.paste(TextView.java:11465)
       at android.widget.TextView.onTextContextMenuItem(TextView.java:11077)
       at org.wordpress.aztec.AztecText.onTextContextMenuItem(AztecText.kt:1062)
       at android.widget.Editor$TextActionModeCallback.onActionItemClicked(Editor.java:4060)
       at com.android.internal.policy.DecorView$ActionModeCallback2Wrapper.onActionItemClicked(DecorView.java:2682)
       at com.android.internal.view.FloatingActionMode$3.onMenuItemSelected(FloatingActionMode.java:99)
       at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:761)
       at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:178)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:908)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:898)
       at com.android.internal.view.FloatingActionMode.lambda$-com_android_internal_view_FloatingActionMode_5017(FloatingActionMode.java:124)
       at com.android.internal.view.-$Lambda$IoKM3AcgDw3Ok5aFi0zlym2p3IA.$m$0(Unknown Source:4)
       at com.android.internal.view.-$Lambda$IoKM3AcgDw3Ok5aFi0zlym2p3IA.onMenuItemClick(Unknown Source)
       at com.android.internal.widget.FloatingToolbar$FloatingToolbarPopup$2.onClick(FloatingToolbar.java:482)
       at android.view.View.performClick(View.java:6291)
       at android.view.View$PerformClick.run(View.java:24931)
       at android.os.Handler.handleCallback(Handler.java:808)
       at android.os.Handler.dispatchMessage(Handler.java:101)
       at android.os.Looper.loop(Looper.java:166)
       at android.app.ActivityThread.main(ActivityThread.java:7358)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:245)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:926)

Ref: https://fabric.io/automattic/android/apps/org.wordpress.android/issues/5a3e8b1a8cb3c2fa63842658?time=last-thirty-days

daniloercoli commented 6 years ago

Maybe this is an already old issue, since it not happening in wp-android-514.

hypest commented 6 years ago

Similar crash happening on wpandroid v9.3, v9.4:

Fatal Exception: java.lang.IndexOutOfBoundsException: 12, -1
       at android.text.PackedIntVector.deleteAt(PackedIntVector.java:222)
       at android.text.DynamicLayout.reflow(DynamicLayout.java:333)
       at android.text.DynamicLayout.-wrap0(Unknown Source)
       at android.text.DynamicLayout$ChangeWatcher.reflow(DynamicLayout.java:766)
       at android.text.DynamicLayout$ChangeWatcher.onSpanChanged(DynamicLayout.java:795)
       at android.text.SpannableStringBuilder.sendSpanChanged(SpannableStringBuilder.java:1292)
       at android.text.SpannableStringBuilder.sendToSpanWatchers(SpannableStringBuilder.java:647)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:577)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:504)
       at android.text.SpannableStringBuilder.replace(SpannableStringBuilder.java:502)
       at android.widget.TextView.paste(TextView.java:11205)
       at android.widget.TextView.onTextContextMenuItem(TextView.java:10861)
       at org.wordpress.aztec.AztecText.onTextContextMenuItem(AztecText.kt:1234)
       at android.widget.Editor$TextActionModeCallback.onActionItemClicked(Editor.java:3963)
       at com.android.internal.policy.DecorView$ActionModeCallback2Wrapper.onActionItemClicked(DecorView.java:2456)
       at com.android.internal.view.FloatingActionMode$3.onMenuItemSelected(FloatingActionMode.java:96)
       at com.android.internal.view.menu.MenuBuilder.dispatchMenuItemSelected(MenuBuilder.java:761)
       at com.android.internal.view.menu.MenuItemImpl.invoke(MenuItemImpl.java:167)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:908)
       at com.android.internal.view.menu.MenuBuilder.performItemAction(MenuBuilder.java:898)
       at com.android.internal.view.FloatingActionMode.lambda$-com_android_internal_view_FloatingActionMode_4856(FloatingActionMode.java:121)
       at com.android.internal.view.-$Lambda$IoKM3AcgDw3Ok5aFi0zlym2p3IA.$m$0(Unknown Source:4)
       at com.android.internal.view.-$Lambda$IoKM3AcgDw3Ok5aFi0zlym2p3IA.onMenuItemClick(Unknown Source)
       at com.android.internal.widget.FloatingToolbar$FloatingToolbarPopup.lambda$-com_android_internal_widget_FloatingToolbar$FloatingToolbarPopup_66324(FloatingToolbar.java:1458)
       at com.android.internal.widget.-$Lambda$nZD8NeHZxo4kFQHu5zIWiAfZj2s$4.$m$0(Unknown Source:12)
       at com.android.internal.widget.-$Lambda$nZD8NeHZxo4kFQHu5zIWiAfZj2s$4.onItemClick(Unknown Source)
       at android.widget.AdapterView.performItemClick(AdapterView.java:318)
       at android.widget.AbsListView.performItemClick(AbsListView.java:1197)
       at android.widget.AbsListView$PerformClick.run(AbsListView.java:3166)
       at android.widget.AbsListView$3.run(AbsListView.java:4119)
       at android.os.Handler.handleCallback(Handler.java:789)
       at android.os.Handler.dispatchMessage(Handler.java:98)
       at android.os.Looper.loop(Looper.java:164)
       at android.app.ActivityThread.main(ActivityThread.java:6809)
       at java.lang.reflect.Method.invoke(Method.java)
       at com.android.internal.os.Zygote$MethodAndArgsCaller.run(Zygote.java:240)
       at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:767)