Closed Bug 1884285 Opened 1 year ago Closed 1 year ago

firefox crashing when clicking security icon in custom tab

Categories

(Firefox for Android :: Crash Reporting, defect)

Firefox 125
ARM64
Android
defect

Tracking

()

RESOLVED DUPLICATE of bug 1884359

People

(Reporter: raj.azharuddin, Unassigned)

References

Details

User Agent: Mozilla/5.0 (Android 13; Mobile; rv:125.0) Gecko/125.0 Firefox/125.0

Steps to reproduce:

Open any link in custom tab, click security icon, firefox is crashing

https://crash-stats.mozilla.org/report/index/72b3193f-d5fb-440d-83c1-3b6d80240308

Actual results:

6582675e-83a1-4d56-b013-fcab14281518
android.content.res.Resources$NotFoundException: Unable to find resource ID #0x7f09045c


android.content.res.Resources$NotFoundException: Unable to find resource ID #0x7f09045c
at android.content.res.ResourcesImpl.getResourceEntryName(ResourcesImpl.java:308)
at android.content.res.Resources.getResourceEntryName(Resources.java:2401)
at org.mozilla.fenix.HomeActivity$onCreate$5.invoke(HomeActivity.kt:29)
at org.mozilla.fenix.components.metrics.BreadcrumbsRecorder.onDestinationChanged(BreadcrumbsRecorder.kt:15)
at androidx.navigation.NavController.dispatchOnDestinationChanged(NavController.kt:108)
at androidx.navigation.NavController.navigate(NavController.kt:102)
at androidx.navigation.NavController.navigate(NavController.kt:29)
at androidx.navigation.NavController.navigate(NavController.kt:104)
at org.mozilla.fenix.ext.NavControllerKt.nav(NavController.kt:75)
at org.mozilla.fenix.ext.FragmentKt.nav$default(Fragment.kt:11)
at org.mozilla.fenix.customtabs.ExternalAppBrowserFragment$navToQuickSettingsSheet$1$1$1.invokeSuspend(ExternalAppBrowserFragment.kt:135)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.kt:111)
at android.os.Handler.handleCallback(Handler.java:942)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loopOnce(Looper.java:210)
at android.os.Looper.loop(Looper.java:299)
at android.app.ActivityThread.main(ActivityThread.java:8123)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:559)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [StandaloneCoroutine{Cancelling}@5856de5, Dispatchers.Main.immediate]

Expected results:

Should not crash

Hardware: All → ARM64

It would only happens when Telemetry is enabled . https://searchfox.org/mozilla-mobile/rev/2dd12ad94fc149fa68d4633118fa4dbdfd75512f/firefox-android/fenix/app/src/main/java/org/mozilla/fenix/HomeActivity.kt#341-348

resource id exists , but could not be found in R file. So the crash happens. https://searchfox.org/mozilla-mobile/rev/2dd12ad94fc149fa68d4633118fa4dbdfd75512f/firefox-android/fenix/app/src/main/java/org/mozilla/fenix/ext/Activity.kt#364,369

It is weird that quickSettingsSheetDialogFragment is missing in R between b6929924f7e9576b65f423f65c01245f434abd20 and 27ba8a65590f5ec36751c0b177523198991b38c8 .


Also i decompiled the bad one and compared with previous apk

The bad one

        public static final int progress_horizontal = 0x7f090459;
        public static final int protection_settings = 0x7f09045a;
        public static final int quick_action_sheet = 0x7f09045d;
        public static final int radio_button = 0x7f09045f;
        public static final int radio_group = 0x7f090460;
        public static final int rating = 0x7f090461;

0x7f09045b, 0x7f09045c, 0x7f09045e is also missing. (Should point to pwaOnboardingDialogFragment , quickSettingsSheetDialogFragment , radio )

I'm not sure if there's more missing IDs.

The good one

     public static final int progress_horizontal = 0x7f09045a;
        public static final int protection_settings = 0x7f09045b;
        public static final int pwaOnboardingDialogFragment = 0x7f09045c;
        public static final int quickSettingsSheetDialogFragment = 0x7f09045d;
        public static final int quick_action_sheet = 0x7f09045e;
        public static final int radio = 0x7f09045f;
        public static final int radio_button = 0x7f090460;
        public static final int radio_group = 0x7f090461;


Another weird thing is all apks from taskcluster ci between b6929924f7e9576b65f423f65c01245f434abd20 and 27ba8a65590f5ec36751c0b177523198991b38c8 contains these resource ids.

Another weird thing is all apks from taskcluster ci between b6929924f7e9576b65f423f65c01245f434abd20 and 27ba8a65590f5ec36751c0b177523198991b38c8 contains these resource ids.

I found this is related to disable-optimization and it relates to shrinkResources and minifyEnabled through transforms

I found fenix-nightly-simulation do not use disable-optimization , so based on the apk from signing-apk-fenix-nightly-simulation task
I found this last good one and the first bad one.

bc9d2e19c36607982d735fd65d9f4a6bb1d92736 good
dfcb84dafee347edd1c351d6651e5fe50e7bf571 bad

And it definitely looks related to bug 1879132 which upgrades AGP version.

See Also: → 1879132
Status: UNCONFIRMED → RESOLVED
Closed: 1 year ago
Duplicate of bug: 1884359
Resolution: --- → DUPLICATE

Thanks for all the debugging, jackyzy823! We'd been looking at this over in bug 1884359 today also, so I duped this over just to keep the discussion in one spot.

You need to log in before you can comment on or make changes to this bug.