Closed Bug 1564308 Opened 9 months ago Closed 9 months ago

{inc}visibility:collapse code makes some adjustments multiple times when the insides of a table aren't reflowed

Categories

(Core :: Layout: Tables, defect)

defect
Not set

Tracking

()

RESOLVED FIXED
mozilla70
Tracking Status
firefox70 --- fixed

People

(Reporter: dbaron, Assigned: dbaron)

References

Details

Attachments

(3 files)

While debugging test failures from the work in bug 1351924 I found one of the failures is an independent, already-existing bug. I think the basic problem is that the visibility:collapse adjustments made by the table code if we skip the main part of nsTableFrame::Reflow and then call AdjustForCollapsingRowsCols, since AdjustForCollapsingRowsCols is not idempotent.

The above testcase is a variant of layout/tables/reftests/1031934.html, which is a test that failed with the patch.

Summary: visibility:collapse code makes some adjustments multiple times when the insides of a table aren't reflowed → {inc}visibility:collapse code makes some adjustments multiple times when the insides of a table aren't reflowed

Bugbug thinks this bug is a task, but please change it back in case of error.

Type: defect → task
Type: task → defect
Attachment #9076904 - Attachment description: Bug 1564308 - Add reftest. r?dholbert → Bug 1564308 - Add reftest. r=dholbert
Attachment #9076905 - Attachment description: Bug 1564308 - Always reflow all row groups and rows if we're doing visibility:collapse adjustments. r?dholbert → Bug 1564308 - Always reflow all row groups and rows if we're doing visibility:collapse adjustments. r=dholbert

And a new try run, since it turns out the assertion actually fired in a crashtest that was testing large widths. (It showed some existing NS_WARN_IF_FALSE failures about the same thing.)

Pushed by dbaron@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/cb68677410a5
Add reftest.  r=dholbert
https://hg.mozilla.org/integration/autoland/rev/514565e608cb
Always reflow all row groups and rows if we're doing visibility:collapse adjustments.  r=dholbert
Pushed by dbaron@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/a2f96a3cba12
Add reftest.  r=dholbert
https://hg.mozilla.org/integration/autoland/rev/5382e671e265
Always reflow all row groups and rows if we're doing visibility:collapse adjustments.  r=dholbert
Status: ASSIGNED → RESOLVED
Closed: 9 months ago
Resolution: --- → FIXED
Target Milestone: --- → mozilla70
Flags: needinfo?(dbaron)
You need to log in before you can comment on or make changes to this bug.