Closed Bug 387126 Opened 17 years ago Closed 15 years ago

Some MathML frames need to be eLineParticipant

Categories

(Core :: MathML, defect)

x86
Linux
defect
Not set
normal

Tracking

()

RESOLVED WORKSFORME

People

(Reporter: bzbarsky, Assigned: rbs)

References

Details

STEPS TO REPRODUCE:

1) Load https://bugzilla.mozilla.org/attachment.cgi?id=268557
2) Get:

###!!! ASSERTION: Wrong line container hint: '!aForFrame || aLineContainer == FindLineContainer(aForFrame)', file ../../../mozilla/layout/generic/nsTextFrameThebes.cpp, line 1083

In this case, aLineContainer is an nsMathMLmtdInnerFrame (which sounds right if we want the block containing this thing), but FindLineContainer(aForFrame) gives nsMathMLTokenFrame, which is not surprising since that's not an eLineParticipant.  Nor is any other MathML frame.

Not sure which MathML frames are line participants, but it seems that nsMathMLTokenFrame is one for sure.
Flags: blocking1.9?
Bug 385265 is also about this assertion.
Indeed.  I bet that patch fixes the issue I see here.  Will retest once it lands.
Depends on: 385265
Are they really line participants?  If so, they have to call all the reflow functions on nsLineLayout appropriately, and ensure they create new line layout objects for any descendants that should be separated...
Probably not, given the patch in bug 385265.
Flags: blocking1.9?
WFM.  bz, are you still seeing this?
I have no idea.  I don't have a working tree to test with, and won't for several weeks.  Given that bug 385265 is fixed, this probably is as well.
QA Contact: ian → mathml
Apparently, there is no longer assertion message with current trunk build.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → WORKSFORME
You need to log in before you can comment on or make changes to this bug.