bug can be reproduced reliably by following steps on Fenix-based Firefox, tested on Beta & latest Nightly (Fennec unaffected)
long press should open dialog box as with other images
browser locks up and crashes, freezing android system navigation until crash to desktop (cannot go back, open recent apps, go home)
Hi for me this does not crash immediately but causes a lot of unexpected behaviour. It does crash ultimately and here is the crash report
74895f15-857b-4e58-8b38-8927c0e34eba
java.lang.RuntimeException: android.os.DeadSystemException
* Sentry: https://sentry.prod.mozaws.net/operations/firefox-nightly/?query=cc94be9a3ee449d4851591859f252665
* Socorro: https://crash-stats.mozilla.org/report/index/bp-664a99d3-0c67-456b-b6dc-aa9200200728
----
java.lang.RuntimeException: android.os.DeadSystemException
at android.content.ClipboardManager.getPrimaryClip(ClipboardManager.java:132)
at org.mozilla.fenix.utils.ClipboardHandler.getText(ClipboardHandler.kt:2)
at org.mozilla.fenix.utils.ClipboardHandler.getUrl(ClipboardHandler.kt:1)
at org.mozilla.fenix.search.SearchFragment.onResume(SearchFragment.kt:16)
at androidx.fragment.app.Fragment.performResume(Fragment.java:5)
at androidx.fragment.app.FragmentStateManager.resume(FragmentStateManager.java:3)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:29)
at androidx.fragment.app.FragmentManager.moveFragmentToExpectedState(FragmentManager.java:4)
at androidx.fragment.app.FragmentManager.moveToState(FragmentManager.java:97)
at androidx.fragment.app.FragmentManager.executeOpsTogether(FragmentManager.java:75)
at androidx.fragment.app.FragmentManager.removeRedundantOperationsAndExecute(FragmentManager.java:11)
at androidx.fragment.app.FragmentManager.execPendingActions(FragmentManager.java:4)
at androidx.fragment.app.FragmentManager$4.run(FragmentManager.java:1)
at android.os.Handler.handleCallback(Handler.java:873)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:193)
at android.app.ActivityThread.main(ActivityThread.java:6718)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:491)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
Caused by: android.os.DeadSystemException
... 20 more
Looks like the problem is that the <image src=...> is a base64 image. Trying to build a simple test case is not working.
Looks like capping this to 2048 characters is reasonable. https://stackoverflow.com/questions/417142/what-is-the-maximum-length-of-a-url-in-different-browsers
note: On other devices there is TransactionTooLargeException.
@sallzt , @s-ankur Is this still reproducible for you?
For QA: Can you test this on multiple devices? I've tested on two and it's not reproducible anymore for me. TY!
Hi, still reproducible on the latest Nightly Build 200831 using the following devices:
• Google Pixel 3a (Android 10)
• Huawei Mate 20 Lite (Android 10)
► Video

hi, still reproducible on latest Nightly build 200831, Pixel 4 XL
behavior identical to before
After some investigation and a lot of help from @Mugurell it looks that this can be fixed in AC: https://github.com/mozilla-mobile/android-components/issues/8298.
Hi, verified as fixed on the latest Nightly Build 201007 using the following devices:
• Google Pixel 3a (Android 11)
• Huawei Mate 20 Lite (Android 10)
• OnePlus A3 (Android 6.0.1)
► Video

This has been an old issue (since 79) so since it has been fixed in AC 61 / Fenix 83, I think we can let this ride the trains and not uplift. Most urls will not be this long, so this is a less common case.