AvaloniaEdit icon indicating copy to clipboard operation
AvaloniaEdit copied to clipboard

`android.runtime.JavaProxyThrowable: [System.ArgumentOutOfRangeException]` on android

Open Coloryr opened this issue 1 year ago • 2 comments

18:48:03.122  I  UNHANDLED EXCEPTION:
18:48:03.126  I  Android.Runtime.JavaProxyThrowable: Exception of type 'Android.Runtime.JavaProxyThrowable' was thrown.
18:48:03.126  I  
18:48:03.126  I    --- End of managed Android.Runtime.JavaProxyThrowable stack trace ---
18:48:03.126  I  android.runtime.JavaProxyThrowable: [System.ArgumentOutOfRangeException]: Index and length must refer to a location within the string. (Parameter 'length')
18:48:03.126  I  	at System.String.ThrowSubstringArgumentOutOfRange(Unknown Source:0)
18:48:03.126  I  	at System.String.Substring(Unknown Source:0)
18:48:03.126  I  	at Avalonia.Android.Platform.Input.AvaloniaInputConnection.GetTextBeforeCursorFormatted(Unknown Source:0)
18:48:03.126  I  	at Android.Views.InputMethods.IInputConnectionInvoker.n_GetTextBeforeCursor_II(Unknown Source:0)
18:48:03.126  I  	at Android.Runtime.JNINativeWrapper.Wrap_JniMarshal_PPII_L(Unknown Source:0)
18:48:03.126  I  	at crc643ec2256bd5ff4bdb.AvaloniaInputConnection.n_getTextBeforeCursor(Native Method)
18:48:03.126  I  	at crc643ec2256bd5ff4bdb.AvaloniaInputConnection.getTextBeforeCursor(AvaloniaInputConnection.java:196)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl.lambda$getTextBeforeCursor$6$com-android-internal-inputmethod-RemoteInputConnectionImpl(RemoteInputConnectionImpl.java:468)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl$$ExternalSyntheticLambda27.get(Unknown Source:8)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl.lambda$dispatchWithTracing$43$com-android-internal-inputmethod-RemoteInputConnectionImpl(RemoteInputConnectionImpl.java:1268)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl$$ExternalSyntheticLambda2.run(Unknown Source:10)
18:48:03.126  I  	at android.os.Handler.handleCallback(Handler.java:942)
18:48:03.126  I  	at android.os.Handler.dispatchMessage(Handler.java:99)
18:48:03.126  I  	at android.os.Looper.loopOnce(Looper.java:210)
18:48:03.126  I  	at android.os.Looper.loop(Looper.java:299)
18:48:03.126  I  	at android.app.ActivityThread.main(ActivityThread.java:8240)
18:48:03.126  I  	at java.lang.reflect.Method.invoke(Native Method)
18:48:03.126  I  	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
18:48:03.126  I  	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
18:48:03.126  I  
18:48:03.126  I    --- End of managed Android.Runtime.JavaProxyThrowable stack trace ---
18:48:03.126  I  android.runtime.JavaProxyThrowable: [System.ArgumentOutOfRangeException]: Index and length must refer to a location within the string. (Parameter 'length')
18:48:03.126  I  	at System.String.ThrowSubstringArgumentOutOfRange(Unknown Source:0)
18:48:03.126  I  	at System.String.Substring(Unknown Source:0)
18:48:03.126  I  	at Avalonia.Android.Platform.Input.AvaloniaInputConnection.GetTextBeforeCursorFormatted(Unknown Source:0)
18:48:03.126  I  	at Android.Views.InputMethods.IInputConnectionInvoker.n_GetTextBeforeCursor_II(Unknown Source:0)
18:48:03.126  I  	at Android.Runtime.JNINativeWrapper.Wrap_JniMarshal_PPII_L(Unknown Source:0)
18:48:03.126  I  	at crc643ec2256bd5ff4bdb.AvaloniaInputConnection.n_getTextBeforeCursor(Native Method)
18:48:03.126  I  	at crc643ec2256bd5ff4bdb.AvaloniaInputConnection.getTextBeforeCursor(AvaloniaInputConnection.java:196)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl.lambda$getTextBeforeCursor$6$com-android-internal-inputmethod-RemoteInputConnectionImpl(RemoteInputConnectionImpl.java:468)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl$$ExternalSyntheticLambda27.get(Unknown Source:8)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl.lambda$dispatchWithTracing$43$com-android-internal-inputmethod-RemoteInputConnectionImpl(RemoteInputConnectionImpl.java:1268)
18:48:03.126  I  	at com.android.internal.inputmethod.RemoteInputConnectionImpl$$ExternalSyntheticLambda2.run(Unknown Source:10)
18:48:03.126  I  	at android.os.Handler.handleCallback(Handler.java:942)
18:48:03.126  I  	at android.os.Handler.dispatchMessage(Handler.java:99)
18:48:03.126  I  	at android.os.Looper.loopOnce(Looper.java:210)
18:48:03.126  I  	at android.os.Looper.loop(Looper.java:299)
18:48:03.126  I  	at android.app.ActivityThread.main(ActivityThread.java:8240)
18:48:03.126  I  	at java.lang.reflect.Method.invoke(Native Method)
18:48:03.126  I  	at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
18:48:03.126  I  	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:954)
18:48:03.126  I  
18:48:03.141  I  Process is going to kill itself!
                 java.lang.Exception
                 	at android.os.Process.killProcess(Process.java:1344)
                 	at com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(RuntimeInit.java:181)
                 	at mono.android.XamarinUncaughtExceptionHandler.uncaughtException(Runtime.java:54)
                 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1073)
                 	at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
                 	at java.lang.Thread.dispatchUncaughtException(Thread.java:2306)
18:48:03.141  I  Sending signal. PID: 970 SIG: 9

When click the control

Coloryr avatar Dec 23 '24 10:12 Coloryr

This happens for me too, but only when I tap outside the bounds of text on a line. If I tap on text within a line, the caret is correcly positioned and no exception occurs.

mikegoatly avatar May 10 '25 18:05 mikegoatly

This no longer occurs after I upgraded everything to 11.3.2, so I think it has been fixed.

mikegoatly avatar Jun 27 '25 22:06 mikegoatly