Fix {min,max}-{width,height} stylo bustage

RESOLVED FIXED

Status

()

defect
RESOLVED FIXED
2 years ago
Last year

People

(Reporter: manishearth, Assigned: manishearth)

Tracking

Firefox Tracking Flags

(Not tracked)

Details

Attachments

(1 attachment)

No description provided.
Comment on attachment 8841139 [details]
Bug 1342596 - Fix test expectations for min/max-width/height;

https://reviewboard.mozilla.org/r/115470/#review116918

r=me assuming we follow up on the crash.
Attachment #8841139 - Flags: review?(bobbyholley) → review+
Pushed by manishearth@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/84c8d6936cad
Fix test expectations for min/max-width/height; r=bholley
That patch is a quickfix to make the tree green.

I don't really understand the actual bug here. It seems like some code paths (Specifically http://searchfox.org/mozilla-central/source/layout/generic/ReflowInput.cpp#2956) expect these properties to not have keyword values. However, nsRuleNode sets them, and in other layout code this is expected.

Furthermore, it seems to only happen in grid code. I haven't really figured out why, I might need to look at this with a debugger.


Backtrace:

#01: nsLayoutUtils::ComputeBSizeValue(int, int, nsStyleCoord const&)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e2165f]
#02: mozilla::SizeComputationInput::ComputeBSizeValue(int, mozilla::StyleBoxSizing, nsStyleCoord const&) const[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e2158e]
#03: mozilla::ReflowInput::ComputeMinMaxValues(mozilla::LogicalSize const&)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e2b252]
#04: mozilla::ReflowInput::InitConstraints(nsPresContext*, mozilla::LogicalSize const&, nsMargin const*, nsMargin const*, nsIAtom*)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e236ba]
#05: mozilla::ReflowInput::Init(nsPresContext*, mozilla::LogicalSize const*, nsMargin const*, nsMargin const*)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e1fc80]
#06: mozilla::ReflowInput::ReflowInput(nsPresContext*, mozilla::ReflowInput const&, nsIFrame*, mozilla::LogicalSize const&, mozilla::LogicalSize const*, unsigned int)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e212f7]
#07: mozilla::ReflowInput::ReflowInput(nsPresContext*, mozilla::ReflowInput const&, nsIFrame*, mozilla::LogicalSize const&, mozilla::LogicalSize const*, unsigned int)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e213b9]
#08: MeasuringReflow(nsIFrame*, mozilla::ReflowInput const*, nsRenderingContext*, mozilla::LogicalSize const&, mozilla::LogicalSize const&, int, int)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f0b723]
#09: ContentContribution(nsGridContainerFrame::GridItemInfo const&, nsGridContainerFrame::GridReflowInput const&, nsRenderingContext*, mozilla::WritingMode, mozilla::LogicalAxis, nsLayoutUtils::IntrinsicISizeType, int, unsigned int)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f0d84b]
#10: MaxContentContribution(nsGridContainerFrame::GridItemInfo const&, nsGridContainerFrame::GridReflowInput const&, nsRenderingContext*, mozilla::WritingMode, mozilla::LogicalAxis, CachedIntrinsicSizes*)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f0a7b4]
#11: nsGridContainerFrame::Tracks::ResolveIntrinsicSizeStep1(nsGridContainerFrame::GridReflowInput&, nsGridContainerFrame::TrackSizingFunctions const&, int, SizingConstraint, nsGridContainerFrame::LineRange const&, nsGridContainerFrame::GridItemInfo const&)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f0a21e]
#12: nsGridContainerFrame::Tracks::ResolveIntrinsicSize(nsGridContainerFrame::GridReflowInput&, nsTArray<nsGridContainerFrame::GridItemInfo>&, nsGridContainerFrame::TrackSizingFunctions const&, nsGridContainerFrame::LineRange nsGridContainerFrame::GridArea::*,[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f07368]
#13: nsGridContainerFrame::Tracks::CalculateSizes(nsGridContainerFrame::GridReflowInput&, nsTArray<nsGridContainerFrame::GridItemInfo>&, nsGridContainerFrame::TrackSizingFunctions const&, int, nsGridContainerFrame::LineRange nsGridContainerFrame::GridArea::*, [/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4efe44c]
#14: nsGridContainerFrame::GridReflowInput::CalculateTrackSizes(nsGridContainerFrame::Grid const&, mozilla::LogicalSize&, SizingConstraint)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4efe146]
#15: nsGridContainerFrame::Reflow(nsPresContext*, mozilla::ReflowOutput&, mozilla::ReflowInput const&, nsReflowStatus&)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4f15bec]
#16: nsLineLayout::ReflowFrame(nsIFrame*, nsReflowStatus&, mozilla::ReflowOutput*, bool&)[/Users/manishearth/mozilla/gluino/obj-x86_64-apple-darwin15.6.0/dist/NightlyDebug.app/Contents/MacOS/XUL +0x4e01cc2]
Keywords: leave-open
BTW, the normal way to annotate tests that crash is to mark them as "skip" rather than commenting them out.
We've had trouble with the parser not recognizing skip in Stylo files before (when used in conjugation with fails, etc). Anyway, this is temporary.
The last directive wins, so the skip should be after any fails/fails-if()/etc.
Actually, according the spec [1], those keyword values are computed to 'auto' for size on block axis.

[1] https://drafts.csswg.org/css-sizing-3/#width-height-keywords
Next steps in bug 1342710
Status: NEW → RESOLVED
Closed: 2 years ago
Resolution: --- → FIXED
Assignee: nobody → manishearth
Pushed by manishearth@gmail.com:
https://hg.mozilla.org/integration/autoland/rev/970eb52865f5
Update expectations for absolute length serialization ; r=manishearth
Removing leave-open keyword from resolved bugs, per :sylvestre.
Keywords: leave-open
You need to log in before you can comment on or make changes to this bug.