Perma [tier 2] org.mozilla.fenix.ui.<test> | java.lang.IllegalStateException: Size(996 x -42) is out of range. Each dimension must be between 0 and 16777215.
Categories
(Fenix :: Pocket, defect, P1)
Tracking
(firefox125+ fixed, firefox126blocking fixed, firefox127blocking fixed)
People
(Reporter: intermittent-bug-filer, Assigned: towhite)
References
Details
(5 keywords)
Crash Data
Attachments
(5 files)
1.79 MB,
image/png
|
Details | |
285.76 KB,
image/png
|
Details | |
48 bytes,
text/x-phabricator-request
|
Details | Review | |
48 bytes,
text/x-phabricator-request
|
phab-bot
:
approval-mozilla-beta+
|
Details | Review |
59 bytes,
text/x-github-pull-request
|
RyanVM
:
approval-mozilla-release+
|
Details | Review |
Filed by: ncsoregi [at] mozilla.com
Parsed log: https://treeherder.mozilla.org/logviewer?job_id=454917903&repo=mozilla-beta
Full log: https://firefox-ci-tc.services.mozilla.com/api/queue/v1/task/KVfnn1CvQN25RFhZxX60oQ/runs/0/artifacts/public/logs/live_backing.log
[task 2024-04-17T23:23:40.348Z] TEST-UNEXPECTED-FAIL | org.mozilla.fenix.ui.ComposeSettingsDeleteBrowsingDataOnQuitTest#deleteBrowsingHistoryOnQuitTest | java.lang.IllegalStateException: Size(996 x -42) is out of range. Each dimension must be between 0 and 16777215.
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LookaheadCapablePlaceable.layout(LookaheadDelegate.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.layout.MeasureScope$-CC.layout$default(MeasureScope.kt:44)
[task 2024-04-17T23:23:40.348Z] at org.mozilla.fenix.compose.StaggeredHorizontalGridKt$StaggeredHorizontalGrid$1$1.measure-3p2s80s(StaggeredHorizontalGrid.kt:96)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.BoxMeasurePolicy.measure-3p2s80s(Box.kt:122)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.FillNode.measure-3p2s80s(Size.kt:699)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutModifierNodeCoordinator.measure-BRTryo0(LayoutModifierNodeCoordinator.kt:116)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.kt:112)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.RowColumnMeasurementHelper.measureWithoutPlacing-_EkL_-Y(RowColumnMeasurementHelper.kt:112)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.foundation.layout.RowColumnMeasurePolicy.measure-3p2s80s(RowColumnImpl.kt:72)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.measure-BRTryo0(LayoutNodeLayoutDelegate.kt:596)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.layout.RootMeasurePolicy.measure-3p2s80s(RootMeasurePolicy.kt:38)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.InnerNodeCoordinator.measure-BRTryo0(InnerNodeCoordinator.kt:126)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:252)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$performMeasureBlock$1.invoke(LayoutNodeLayoutDelegate.kt:251)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.Snapshot$Companion.observe(Snapshot.kt:2303)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver$ObservedScopeMap.observe(SnapshotStateObserver.kt:500)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.runtime.snapshots.SnapshotStateObserver.observeReads(SnapshotStateObserver.kt:256)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeReads$ui_release(OwnerSnapshotObserver.kt:133)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.OwnerSnapshotObserver.observeMeasureSnapshotReads$ui_release(OwnerSnapshotObserver.kt:113)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:1617)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate.access$performMeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:36)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNodeLayoutDelegate$MeasurePassDelegate.remeasure-BRTryo0(LayoutNodeLayoutDelegate.kt:620)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.LayoutNode.remeasure-_Sx5XlM$ui_release(LayoutNode.kt:1145)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.MeasureAndLayoutDelegate.doRemeasure-sdFAvZA(MeasureAndLayoutDelegate.kt:354)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.MeasureAndLayoutDelegate.remeasureOnly(MeasureAndLayoutDelegate.kt:562)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.node.MeasureAndLayoutDelegate.measureOnly(MeasureAndLayoutDelegate.kt:407)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.platform.AndroidComposeView.onMeasure(AndroidComposeView.android.kt:1058)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.platform.AbstractComposeView.internalOnMeasure$ui_release(ComposeView.android.kt:302)
[task 2024-04-17T23:23:40.348Z] at androidx.compose.ui.platform.AbstractComposeView.onMeasure(ComposeView.android.kt:289)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.RecyclerView$LayoutManager.measureChildWithMargins(RecyclerView.java:10210)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.LinearLayoutManager.layoutChunk(LinearLayoutManager.java:1688)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.LinearLayoutManager.fill(LinearLayoutManager.java:1622)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.LinearLayoutManager.onLayoutChildren(LinearLayoutManager.java:687)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.RecyclerView.dispatchLayoutStep1(RecyclerView.java:4591)
[task 2024-04-17T23:23:40.348Z] at androidx.recyclerview.widget.RecyclerView.onMeasure(RecyclerView.java:4016)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.348Z] at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasureChild(CoordinatorLayout.java:795)
[task 2024-04-17T23:23:40.348Z] at com.google.android.material.appbar.HeaderScrollingViewBehavior.onMeasureChild(HeaderScrollingViewBehavior.java:100)
[task 2024-04-17T23:23:40.348Z] at com.google.android.material.appbar.AppBarLayout$ScrollingViewBehavior.onMeasureChild(AppBarLayout.java:2376)
[task 2024-04-17T23:23:40.348Z] at androidx.coordinatorlayout.widget.CoordinatorLayout.onMeasure(CoordinatorLayout.java:866)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.348Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.348Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.348Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.348Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.348Z] at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
[task 2024-04-17T23:23:40.348Z] at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
[task 2024-04-17T23:23:40.349Z] at org.mozilla.fenix.perf.HomeActivityRootLinearLayout.onMeasure(HomeActivityRootLinearLayout.kt:26)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.349Z] at androidx.appcompat.widget.ContentFrameLayout.onMeasure(ContentFrameLayout.java:145)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.measureChildBeforeLayout(LinearLayout.java:1552)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.measureVertical(LinearLayout.java:842)
[task 2024-04-17T23:23:40.349Z] at android.widget.LinearLayout.onMeasure(LinearLayout.java:721)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewGroup.measureChildWithMargins(ViewGroup.java:6957)
[task 2024-04-17T23:23:40.349Z] at android.widget.FrameLayout.onMeasure(FrameLayout.java:194)
[task 2024-04-17T23:23:40.349Z] at com.android.internal.policy.DecorView.onMeasure(DecorView.java:747)
[task 2024-04-17T23:23:40.349Z] at android.view.View.measure(View.java:25466)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewRootImpl.performMeasure(ViewRootImpl.java:3397)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewRootImpl.measureHierarchy(ViewRootImpl.java:2228)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewRootImpl.performTraversals(ViewRootImpl.java:2486)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewRootImpl.doTraversal(ViewRootImpl.java:1952)
[task 2024-04-17T23:23:40.349Z] at android.view.ViewRootImpl$TraversalRunnable.run(ViewRootImpl.java:8171)
[task 2024-04-17T23:23:40.349Z] at android.view.Choreographer$CallbackRecord.run(Choreographer.java:972)
[task 2024-04-17T23:23:40.349Z] at android.view.Choreographer.doCallbacks(Choreographer.java:796)
[task 2024-04-17T23:23:40.349Z] at android.view.Choreographer.doFrame(Choreographer.java:731)
[task 2024-04-17T23:23:40.349Z] at android.view.Choreographer$FrameDisplayEventReceiver.run(Choreographer.java:957)
[task 2024-04-17T23:23:40.349Z] at android.os.Handler.handleCallback(Handler.java:938)
[task 2024-04-17T23:23:40.349Z] at android.os.Handler.dispatchMessage(Handler.java:99)
[task 2024-04-17T23:23:40.349Z] at android.os.Looper.loop(Looper.java:223)
[task 2024-04-17T23:23:40.349Z] at android.app.ActivityThread.main(ActivityThread.java:7656)
[task 2024-04-17T23:23:40.349Z] at java.lang.reflect.Method.invoke(Native Method)
[task 2024-04-17T23:23:40.349Z] at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:592)
[task 2024-04-17T23:23:40.349Z] at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:947)
[task 2024-04-17T23:23:40.349Z]
Comment 1•8 months ago
|
||
Example of tests:
- org.mozilla.fenix.ui.ComposeSettingsDeleteBrowsingDataOnQuitTest#deleteBrowsingHistoryOnQuitTest
- org.mozilla.fenix.ui.HomeScreenTest#verifyCustomizeHomepageButtonTest
- org.mozilla.fenix.ui.PocketTest#pocketDiscoverMoreButtonTest
- org.mozilla.fenix.ui.ComposeHomeScreenTest#verifyCustomizeHomepageButtonTest
- org.mozilla.fenix.ui.SettingsDeleteBrowsingDataOnQuitTest#deleteBrowsingHistoryOnQuitTest
:bclark this doesn't seem to have an apparent regressor atm, do you have a few minutes to assign this to someone?
Thank you.
Comment 2•8 months ago
|
||
This seems to have regressed again causing widespread crashes on the home-screen due to negative height similar to last time in https://bugzilla.mozilla.org/show_bug.cgi?id=1888549
Comment 5•8 months ago
|
||
This is crashing on startup on real devices too. Big spike at the moment.
Updated•8 months ago
|
Updated•8 months ago
|
Comment 6•8 months ago
•
|
||
This is being caused by some bad data from Pocket:
2024-04-17 19:09:06.811 14228-14228 bondbond org.mozilla.fenix.debug D categories:
[PocketRecommendedStoriesCategory(name=general, stories=[PocketRecommendedStory(title=null, url=null,
imageUrl=https://img-getpocket.cdn.mozilla.net/{wh}/filters:format(jpeg):quality(60):no_upscale():strip_exif()/null,
publisher=, category=general, timeToRead=-1, timesShown=3)])]
Bad data aside, Fenix should also have some better defensive coding for handling situations like these. In the UI, we should look into refactoring our custom StaggeredHorizontalGrid with the recently provided FlowRow component. In the data layer, we should consider tossing-out bad data that's retrieved in PocketStoriesUseCases.
Adjacently, iOS Firefox in this situation simply isn't rendering the categories since the data is broken.
Comment 7•8 months ago
•
|
||
Prevented the crash by replacing StaggeredHorizontalGrid
with FlowRow
. The UI looks like the attached screenshot
Updated•8 months ago
|
Comment 8•8 months ago
|
||
Comment 9•8 months ago
|
||
Reading the Slack thread: it sounds like the crash was resolved with a Pocket content patch; hard to tell from the crash stats page but I'm hoping that's true.
(Still definitely good to land any crash resiliency fix, per Noah's suggestion in Comment 6, because any startup crash that can be caused by an external content API is a big vulnerability for us).
Comment hidden (Intermittent Failures Robot) |
Updated•8 months ago
|
Assignee | ||
Comment 11•8 months ago
•
|
||
The problem at the data layer is caused by the current conversion of title
, url
& imageUrl
by json.getString
. If a literal null value is provided in JSON it will be coerced to a string as "null" and parsed as a valid Story. I will avoid changing any UX code at this point, as I believe this particular issue pertains to the handling of the provided data.
Noah, perhaps we should look into creating a new issue to convert all uses of StaggeredHorizontalGrid
with FlowRow
?
Assignee | ||
Comment 12•8 months ago
|
||
Comment 13•8 months ago
|
||
Updated•8 months ago
|
Comment 14•8 months ago
|
||
bugherder |
Comment 15•8 months ago
|
||
:twhite adding a reminder here to add a beta and release uplift request when ready.
Will aim to take it in beta, but release depends on the risk.
Comment hidden (Intermittent Failures Robot) |
Assignee | ||
Comment 17•8 months ago
|
||
Original Revision: https://phabricator.services.mozilla.com/D207990
Updated•8 months ago
|
Comment 18•8 months ago
|
||
beta Uplift Approval Request
- User impact if declined: Potential crashes caused by unhandled bad Pocket data
- Code covered by automated testing: yes
- Fix verified in Nightly: yes
- Needs manual QE test: no
- Steps to reproduce for manual QE testing: -
- Risk associated with taking this patch: Low
- Explanation of risk level: Verified in Nightly, covered by automated tests
- String changes made/needed: No
- Is Android affected?: no
Updated•8 months ago
|
Updated•8 months ago
|
Comment 19•8 months ago
|
||
uplift |
Comment 20•8 months ago
|
||
Updated•8 months ago
|
Comment 21•8 months ago
|
||
Comment on attachment 9398278 [details] [review]
[mozilla-mobile/firefox-android] Uplift for Bug 1892126 - Updated jsonToPocketApiStory function to handle null values r=android-reviewers,rsainani (#6084)
Approved for 125.3.0
Comment 22•8 months ago
|
||
Authored by https://github.com/t-p-white
https://github.com/mozilla-mobile/firefox-android/commit/f6bf84b5d259a03163aa242e2f87a1e7af28d431
[releases_v125] Bug 1892126 - Updated jsonToPocketApiStory function to handle null values r=android-reviewers,rsainani
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Comment hidden (Intermittent Failures Robot) |
Description
•