Closed Bug 1511730 Opened Last year Closed Last year

put nsBulletFrame-specific state bits in the correct group

Categories

(Core :: Layout, enhancement)

enhancement
Not set

Tracking

()

RESOLVED FIXED
mozilla65
Tracking Status
firefox65 --- fixed

People

(Reporter: dbaron, Assigned: dbaron)

Details

Attachments

(3 files)

The nsBulletFrame-specific state bits are currently marked as "Block" rather than "Bullet"... even though there's a bullet group.  I *think* this looks like a mistake.

Try run: https://treeherder.mozilla.org/#/jobs?repo=try&revision=56f10b42f81fdc31877e74f72f9df7397ec46e38&group_state=expanded
(The other question is why nothing was broken as a result of this!)
(I'm working on a patch to add some verification assertions, but I haven't yet thought of a decent way to do cross-group verification.)
Without patch 1, this correctly triggers:
Assertion failure: !(bitsUsedPerGroup[group] & bit) (BULLET_FRAME_HAS_FONT_INFLATION must not use a bit already declared within its group), at /home/dbaron/builds/mozilla-central/mozilla/layout/generic/nsFrameStateBits.h:594
Attachment #9029544 - Attachment description: Bug 1511730 patch 1 - But nsBulletFrame-specific state bits in the correct group. → Bug 1511730 patch 1 - But nsBulletFrame-specific state bits in the correct group. r=heycam
Attachment #9029545 - Attachment description: Bug 1511730 patch 2 - Refactor the frame state group macros so that there's a unique header for every group. → Bug 1511730 patch 2 - Refactor the frame state group macros so that there's a unique header for every group. r=heycam
Attachment #9029546 - Attachment description: Bug 1511730 patch 3 - Verify there are no frame state bit conflicts within groups. → Bug 1511730 patch 3 - Verify there are no frame state bit conflicts within groups. r=heycam
Pushed by dbaron@mozilla.com:
https://hg.mozilla.org/integration/autoland/rev/3984125e9c65
patch 1 - But nsBulletFrame-specific state bits in the correct group.  r=heycam
https://hg.mozilla.org/integration/autoland/rev/6faca87a7549
patch 2 - Refactor the frame state group macros so that there's a unique header for every group.  r=heycam
https://hg.mozilla.org/integration/autoland/rev/6fd0a7cc9a43
patch 3 - Verify there are no frame state bit conflicts within groups.  r=heycam
You need to log in before you can comment on or make changes to this bug.