Don't try to Place() invisible operators. b=420420 r+sr=roc a=beltzner

This commit is contained in:
karlt+@karlt.net 2008-03-06 14:21:07 -08:00
Родитель 2ad4b8c4f3
Коммит 6620201b36
1 изменённых файлов: 9 добавлений и 6 удалений

Просмотреть файл

@ -758,12 +758,15 @@ nsMathMLmoFrame::Stretch(nsIRenderingContext& aRenderingContext,
}
}
// Place our children using the default method
// This will allow our child text frame to get its DidReflow()
nsresult rv = Place(aRenderingContext, PR_TRUE, aDesiredStretchSize);
if (NS_MATHML_HAS_ERROR(mPresentationData.flags) || NS_FAILED(rv)) {
// Make sure the child frames get their DidReflow() calls.
DidReflowChildren(mFrames.FirstChild());
// Child frames of invisble operators are not reflowed
if (!NS_MATHML_OPERATOR_IS_INVISIBLE(mFlags)) {
// Place our children using the default method
// This will allow our child text frame to get its DidReflow()
nsresult rv = Place(aRenderingContext, PR_TRUE, aDesiredStretchSize);
if (NS_MATHML_HAS_ERROR(mPresentationData.flags) || NS_FAILED(rv)) {
// Make sure the child frames get their DidReflow() calls.
DidReflowChildren(mFrames.FirstChild());
}
}
if (useMathMLChar) {