Bug 1525133 Comment 0 Edit History

Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.

nsBlockFrame::GetNaturalBaselineBOffset has a call to...
> kid->GetVerticalAlignBaseline(aWM)

...without checking whether aWM is parallel to `kid`'s writing mode.

This is bogus, per the GetVerticalAlignBaseline documentation:
> * @note You should only call this on frames with a WM that's parallel to aWM.
https://searchfox.org/mozilla-central/rev/152993fa346c8fd9296e4cd6622234a664f53341/layout/generic/nsIFrame.h#1406

We add a writing mode check before the call in question.

(I ran into this when fixing bug 969874, when trying to add a more subtle implementation of GetLogicalBaseline. Inside that implementation, I assumed that the passed-in aWM was parallel to the `this` frame's WM, and that assumption turned out not to be valid, in part due to this bug.)
nsBlockFrame::GetNaturalBaselineBOffset has a call to...
> kid->GetVerticalAlignBaseline(aWM)

...without checking whether aWM is parallel to `kid`'s writing mode.

This is bogus, per the GetVerticalAlignBaseline documentation:
> * @note You should only call this on frames with a WM that's parallel to aWM.
https://searchfox.org/mozilla-central/rev/152993fa346c8fd9296e4cd6622234a664f53341/layout/generic/nsIFrame.h#1406

We should add a writing mode check before the call in question.

(I ran into this when fixing bug 969874, when trying to add a more subtle implementation of GetLogicalBaseline. Inside that implementation, I assumed that the passed-in aWM was parallel to the `this` frame's WM, and that assumption turned out not to be valid, in part due to this bug.)

Back to Bug 1525133 Comment 0