Crash when tapping the two CFR's "Try review checker" option
Categories
(Fenix :: Shopping, defect, P1)
Tracking
(firefox118 disabled, firefox119 disabled, firefox120+ verified)
People
(Reporter: mlobontiuroman, Assigned: vdreghici)
References
(Blocks 1 open bug)
Details
(Keywords: topcrash, Whiteboard: [fxdroid] [fakespot-android-mvp])
Crash Data
Attachments
(1 file)
Steps to reproduce
- Have a clean profile.
- Open bestbuy.com, then select a product.
- On a product's page, the first CFR is displayed.
- DON'T act on it, just change the orientation of the device.
- Minimize Fenix.
- Re-open Fenix, and observe the two CFR's.
- Tap on the "Try review checker" option from the both displayed CFR's.
Expected behavior
The "Review checker" is displayed.
Actual behavior
Crash.
62339971-0f79-420a-9cfc-861cc92955a3
java.lang.IllegalArgumentException: View=mozilla.components.compose.cfr.CFRPopupFullscreenLayout{d5c4bcd V.E..V... ......I. 0,0-1848,2864 aid=1073741977} not attached to window manager
* New Sentry Instance: https://sentry.io/organizations/mozilla/issues/?project=6295546&query=d16710e83fc04fa88f82520198055cc4
* Socorro: https://crash-stats.mozilla.org/report/index/bp-b3f290d7-69c7-44a4-b599-d4eb10230929
----
java.lang.IllegalArgumentException: View=mozilla.components.compose.cfr.CFRPopupFullscreenLayout{d5c4bcd V.E..V... ......I. 0,0-1848,2864 aid=1073741977} not attached to window manager
at android.view.WindowManagerGlobal.findViewLocked(WindowManagerGlobal.java:730)
at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:616)
at android.view.WindowManagerImpl.removeViewImmediate(WindowManagerImpl.java:228)
at mozilla.components.compose.cfr.CFRPopupFullscreenLayout.dismiss$compose_cfr_release(CFRPopupFullscreenLayout.kt:29)
at mozilla.components.compose.cfr.CFRPopup.dismiss(CFRPopup.kt:13)
at org.mozilla.fenix.components.toolbar.BrowserToolbarCFRPresenter$showShoppingCFR$3$1$1.invoke(BrowserToolbarCFRPresenter.kt:12)
at androidx.compose.foundation.ClickablePointerInputNode$pointerInput$3.invoke(Clickable.kt:13)
at androidx.compose.foundation.gestures.TapGestureDetectorKt$detectTapAndPress$2$1.invokeSuspend(TapGestureDetector.kt:134)
at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(ContinuationImpl.kt:9)
at kotlinx.coroutines.DispatchedTaskKt.resume(DispatchedTask.kt:83)
at kotlinx.coroutines.CancellableContinuationImpl.dispatchResume(CancellableContinuationImpl.kt:138)
at kotlinx.coroutines.CancellableContinuationImpl.resumeImpl(CancellableContinuationImpl.kt:45)
at kotlinx.coroutines.CancellableContinuationImpl.resumeWith(CancellableContinuationImpl.kt:17)
at androidx.compose.ui.input.pointer.SuspendingPointerInputModifierNodeImpl.dispatchPointerEvent(SuspendingPointerInputFilter.kt:51)
at androidx.compose.ui.input.pointer.SuspendingPointerInputModifierNodeImpl.onPointerEvent-H0pRuoY(SuspendingPointerInputFilter.kt:31)
at androidx.compose.foundation.AbstractClickablePointerInputNode.onPointerEvent-H0pRuoY(Clickable.kt:3)
at androidx.compose.foundation.AbstractClickableNode.onPointerEvent-H0pRuoY(Clickable.kt:5)
at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:174)
at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:153)
at androidx.compose.ui.input.pointer.Node.dispatchMainEventPass(HitPathTracker.kt:153)
at androidx.compose.ui.input.pointer.HitPathTracker.dispatchChanges(HitPathTracker.kt:40)
at androidx.compose.ui.input.pointer.PointerInputEventProcessor.process-BIzXfog(PointerInputEventProcessor.kt:164)
at androidx.compose.ui.platform.AndroidComposeView.sendMotionEvent-8iAsVTc(AndroidComposeView.android.kt:79)
at androidx.compose.ui.platform.AndroidComposeView.handleMotionEvent-8iAsVTc(AndroidComposeView.android.kt:224)
at androidx.compose.ui.platform.AndroidComposeView.dispatchTouchEvent(AndroidComposeView.android.kt:88)
at android.view.ViewGroup.dispatchTransformedTouchEvent(ViewGroup.java:3361)
at android.view.ViewGroup.dispatchTouchEvent(ViewGroup.java:3035)
at android.view.View.dispatchPointerEvent(View.java:15866)
at android.view.ViewRootImpl$ViewPostImeInputStage.processPointerEvent(ViewRootImpl.java:8264)
at android.view.ViewRootImpl$ViewPostImeInputStage.onProcess(ViewRootImpl.java:7955)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7291)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7348)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7314)
at android.view.ViewRootImpl$AsyncInputStage.forward(ViewRootImpl.java:7512)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7322)
at android.view.ViewRootImpl$AsyncInputStage.apply(ViewRootImpl.java:7569)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7295)
at android.view.ViewRootImpl$InputStage.onDeliverToNext(ViewRootImpl.java:7348)
at android.view.ViewRootImpl$InputStage.forward(ViewRootImpl.java:7314)
at android.view.ViewRootImpl$InputStage.apply(ViewRootImpl.java:7322)
at android.view.ViewRootImpl$InputStage.deliver(ViewRootImpl.java:7295)
at android.view.ViewRootImpl.deliverInputEvent(ViewRootImpl.java:10971)
at android.view.ViewRootImpl.doProcessInputEvents(ViewRootImpl.java:10853)
at android.view.ViewRootImpl.enqueueInputEvent(ViewRootImpl.java:10809)
at android.view.ViewRootImpl$WindowInputEventReceiver.onInputEvent(ViewRootImpl.java:11109)
at android.view.InputEventReceiver.dispatchInputEvent(InputEventReceiver.java:295)
at android.os.MessageQueue.nativePollOnce(Native Method)
at android.os.MessageQueue.next(MessageQueue.java:335)
at android.os.Looper.loopOnce(Looper.java:186)
at android.os.Looper.loop(Looper.java:313)
at android.app.ActivityThread.main(ActivityThread.java:8810)
at java.lang.reflect.Method.invoke(Native Method)
at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:604)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1067)
Suppressed: kotlinx.coroutines.internal.DiagnosticCoroutineContextException: [androidx.compose.ui.platform.MotionDurationScaleImpl@851b11d, androidx.compose.runtime.BroadcastFrameClock@82d6f92, StandaloneCoroutine{Cancelling}@432d63, AndroidUiDispatcher@200ad60]
Device information
- Firefox version: Nightly 120.0a1 from 9/29
- Android devices: Huawei MediaPad M2 (Android 5.1.1), and Samsung Galaxy S8 Ultra (Android 12)
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Updated•1 year ago
|
Comment 1•1 year ago
|
||
Comment 2•1 year ago
|
||
Authored by https://github.com/Alexandru2909
https://github.com/mozilla-mobile/firefox-android/commit/549cb94f4b81538c5424c0c5930c6d05f7aa346a
[main] Bug 1855939 - Fix crash when tapping the shopping CFR action after rotation
Reporter | ||
Comment 3•1 year ago
|
||
Verified as fixed on the latest Fenix Nightly 120.0a1 from 10/4 with the following devices:
- Huawei MediaPad M2 (Android 5.1.1),
- Samsung Galaxy S8 Ultra (Android 12), and
- Oppo Find N2 Flip (Android 13).
Comment 4•1 year ago
|
||
:apitanu this is marked as disabled for Fx119 but there is crash volume in 119.0
Could you take a look, wondering if this could/should get a release uplift request.
Comment 5•1 year ago
|
||
[:dmeehan] Thanks for flagging this, Alex is not in Mozilla anymore, we're gonna investigate this. Vlad, can you please investigate this? I'm only seeing tcp cfr and private browsing shortcut in the crash reports.
Assignee | ||
Updated•1 year ago
|
Comment 6•1 year ago
|
||
Since this crash affects all CFRs, we should uplift to Beta 120 and maybe even a 119 dot release.
Comment 7•1 year ago
|
||
(In reply to Chris Peterson [:cpeterson] from comment #6)
Since this crash affects all CFRs, we should uplift to Beta 120 and maybe even a 119 dot release.
The fix is already in beta
Comment 8•1 year ago
|
||
The bug is linked to a topcrash signature, which matches the following criterion:
- Top 10 AArch64 and ARM crashes on beta
For more information, please visit BugBot documentation.
Assignee | ||
Comment 9•1 year ago
|
||
I have looked into the crashes for TCP and RecommendPrivateBrowsing and came to the conclusion that they are not reproducible anymore in 120 beta. The TCP one seems to be solved in in this ticket by Alex, while the RecommendPrivateBrowsing was solved by Jeff here.
Comment 10•1 year ago
|
||
(In reply to Vlad Dreghici [:vdreghici] from comment #9)
I have looked into the crashes for TCP and RecommendPrivateBrowsing and came to the conclusion that they are not reproducible anymore in 120 beta. The TCP one seems to be solved in in this ticket by Alex, while the RecommendPrivateBrowsing was solved by Jeff here.
What's needed in a 119 dot release to address this?
Comment 11•1 year ago
|
||
I will request an uplift for https://bugzilla.mozilla.org/show_bug.cgi?id=1858997. The Private browsing cfr is most likely the cause of the previous crashes but unrelated to the current spike.
Comment 12•1 year ago
|
||
agreed |
In that case, let's close this.
[:dmeehan] The signature is the same but it's not the review checker CFRs that's causing this crash. I don't think this specific bug needs uplifting to 119 as the crashes are in a different code path than the review checker CFR.
Comment 13•1 year ago
|
||
Since discussions are in Bug 1858997 I'll mark 119 disabled for this bug.
Updated•1 year ago
|
Updated•1 year ago
|
Description
•