Assertion failure: false (item should have finite clip with respect to aASR), at /builds/worker/workspace/build/src/layout/painting/nsDisplayList.cpp:3086
Categories
(Core :: Web Painting, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox-esr60 | --- | wontfix |
firefox-esr68 | --- | wontfix |
firefox-esr78 | --- | wontfix |
firefox65 | --- | wontfix |
firefox66 | --- | wontfix |
firefox67 | --- | wontfix |
firefox68 | --- | wontfix |
firefox69 | --- | wontfix |
firefox70 | --- | wontfix |
firefox72 | --- | wontfix |
firefox73 | --- | wontfix |
firefox74 | --- | wontfix |
firefox77 | --- | wontfix |
firefox78 | --- | wontfix |
firefox79 | --- | wontfix |
firefox80 | --- | fixed |
People
(Reporter: jkratzer, Assigned: TYLin)
References
(Blocks 1 open bug)
Details
(Keywords: assertion, testcase, Whiteboard: [fuzzblocker])
Attachments
(4 files)
Updated•7 years ago
|
Updated•7 years ago
|
Updated•6 years ago
|
Comment 1•6 years ago
|
||
Updated•6 years ago
|
Updated•5 years ago
|
Updated•5 years ago
|
Comment 2•5 years ago
|
||
The fuzzers have been hitting this regularly for a while now and it would be great to get it out of the way.
A Pernosco session is available here: https://pernos.co/debug/-DIK4LWw5GfaV1XvKCdeQw/index.html
Updated•5 years ago
|
Updated•4 years ago
|
Comment 3•4 years ago
•
|
||
No sense trying to bisect this since it is more than a year old.
Matt is there someone that could take a look at this? It has been around for a long time and the fuzzer are tripping over it[1]. If it is benign could we just remove the assertion or make it a warning?
[1] https://firefox-source-docs.mozilla.org/tools/fuzzing/#fuzz-blockers
Comment 4•4 years ago
|
||
transform-style:preserve-3d is supposed to create a containing block for fixed children, and it doesn't look like that's happening here, due to the interaction between <fieldset> and columns.
It appears that when we construct the FieldsetFrame, we adjust the abs pos containing block frame to be the ColumnSetWrapperFrame, here - https://searchfox.org/mozilla-central/rev/c86c19bd64f8f19590a4190c282781d3a9631422/layout/base/nsCSSFrameConstructor.cpp#3006
We call PushAbsoluteContainingBlock with the column set frame, but IsFixedPosContainingBlock() returns false for this frame (we haven't inherited the preserve-3d style into the anonymous frame), and we don't set mFixedPosIsAbsPos as we normally would.
Mats do you have ideas on how this is supposed to work? I'm not sure if this is a bug with preserve-3d, or frameset.
Updated•4 years ago
|
Assignee | ||
Comment 5•4 years ago
|
||
It appears that when we construct the FieldsetFrame, we adjust the abs pos containing block frame to be the ColumnSetWrapperFrame, here - https://searchfox.org/mozilla-central/rev/c86c19bd64f8f19590a4190c282781d3a9631422/layout/base/nsCSSFrameConstructor.cpp#3006
We call PushAbsoluteContainingBlock with the column set frame, but IsFixedPosContainingBlock() returns false for this frame (we haven't inherited the preserve-3d style into the anonymous frame), and we don't set mFixedPosIsAbsPos as we normally would.
I think this is a bug in ConstructFieldSetFrame
. Currently, we adjust absPosContainer
to be the ColumnSetWrapperFrame
when we need to create multicol, and use it as the aPositionedFrame
argument for PushAbsoluteContainingBlock
.
However, per PushAbsoluteContainingBlock
's document [1],
"aPositionedFrame
is the frame whose style actually makes aNewAbsoluteContainingBlock
a containing block."
So I think maybe we should just use FieldsetFrame
itself as the aPositionedFrame
since it is the frame that has the transform style.
Assignee | ||
Comment 6•4 years ago
|
||
Per documentation, aPositionedFrame
(the second argument) of
PushAbsoluteContainingBlock
should be the frame whose style actually
makes the new absolute containing block a containing block, so it should
be the fieldset frame itself, not fieldset's inner frame.
Comment 7•4 years ago
|
||
Comment 9•4 years ago
|
||
bugherder |
Updated•4 years ago
|
Description
•