LogicalSides should have a DEBUG-only mWritingMode for assertions
Categories
(Core :: Layout, defect, P3)
Tracking
()
Tracking | Status | |
---|---|---|
firefox77 | --- | fixed |
People
(Reporter: dbaron, Assigned: dbaron)
Details
Attachments
(3 files)
While reviewing bug 1626129 I noticed that:
- it's not particularly clear what writing mode
GetLogicalSkipSides()
is in -- is it the frame's writing mode, or its parent's / containing block's? nsIFrame::ContentSize(mozilla::WritingMode)
appears to produce incorrect results if itsaWritingMode
argument is not the writing mode thatGetLogicalSkipSides()
is in, because it applies the skip sides to aLogicalMargin
inaWritingMode
. Most, but not all, of the callers appear to pass the frame's writing mode to this method.LogicalSides
itself doesn't carry anmWritingMode
so that methods likeLogicalMargin::ApplySkipSides
can haveCHECK_WRITING_MODE
assertions to verify that the correct conversions (if needed) have been done.
Comment 1•5 years ago
|
||
Yes, this sounds like something we should have, to help catch any incorrect usage.
Assignee | ||
Updated•5 years ago
|
Assignee | ||
Comment 3•5 years ago
|
||
Further evidence for bug 1631947 - this has a bug that showed up in exactly one test in our test suite:
REFTEST TEST-UNEXPECTED-FAIL | layout/base/crashtests/365909-2.xhtml | assertion count 2 is more than expected 0 assertions
Assignee | ||
Comment 4•5 years ago
|
||
Here's another try run.
Assignee | ||
Comment 5•5 years ago
|
||
Assignee | ||
Comment 6•5 years ago
|
||
Assignee | ||
Comment 7•5 years ago
|
||
Assignee | ||
Comment 9•5 years ago
|
||
That said, I believe this patch should have made the behavior consistent with the behavior we had for almost all things -- but according to the spec that behavior is wrong, for which I filed bug 1632228.
Comment 10•5 years ago
|
||
Backed out 3 changesets (Bug 1631941) for causing valgrind bustages in /builds/worker/workspace/obj-build/dist/include/mozilla/WritingModes CLOSED TREE
Valgrind: https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedJob=298866385&resultStatus=testfailed%2Cbusted%2Cexception&classifiedState=unclassified
Log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=298866385&repo=autoland&lineNumber=16300
Build bustages: https://treeherder.mozilla.org/#/jobs?repo=autoland&selectedJob=298863621&resultStatus=testfailed%2Cbusted%2Cexception&classifiedState=unclassified
Log: https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=298863621&repo=autoland&lineNumber=18419
Assignee | ||
Comment 11•5 years ago
|
||
I thought I queued this for relanding this morning, but apparently it didn't work, so I did so again just now.
Comment 12•5 years ago
|
||
Assignee | ||
Comment 13•5 years ago
|
||
For the record, this was the bustage fix so that it would compile correctly on non-DEBUG
builds.
Comment 14•5 years ago
|
||
Backed out 3 changesets (Bug 1631941) for mass build bustages CLOSED TREE
https://treeherder.mozilla.org/logviewer.html#/jobs?job_id=298934801&repo=autoland&lineNumber=19977
Assignee | ||
Comment 15•5 years ago
|
||
Comment 16•5 years ago
|
||
Comment 17•5 years ago
|
||
bugherder |
https://hg.mozilla.org/mozilla-central/rev/6120b8d2df59
https://hg.mozilla.org/mozilla-central/rev/ff5ce5fd70ee
https://hg.mozilla.org/mozilla-central/rev/03e0159cd77f
Description
•