Closed Bug 345563 Opened 18 years ago Closed 18 years ago

MathML superscript and subscript no longer work

Categories

(Core :: MathML, defect)

PowerPC
macOS
defect
Not set
blocker

Tracking

()

RESOLVED FIXED

People

(Reporter: jruderman, Assigned: rbs)

Details

(Keywords: regression, testcase)

Attachments

(2 files)

MathML superscript and subscript don't work on trunk.  Numbers are displayed as if they weren't superscripted or subscripted.

Works  in 2006-06-21 Mac nightly
Broken in 2006-07-21 Mac nightly

It's hard for me to get a narrow regression range due to bug 342533 making MathML crash throughout most of that range.
Attached file testcase
Fractions are busted too.
I see a regression between 2006-07-17 and 2006-07-19 (but the choice of font doesn't seem to be correct for the 2006-07-17 build, either).
Does that mean you didn't suffer from the crash in bug 342533?

I see checkins for bug 344050, bug 323737, and bug 342533 during that regression window.
No, apparently, I didn't suffer from bug 342533.
Ok, I've now downloaded a 2006-07-18 build and I can see the problem there too. I guess that leaves bug 342533.
Seems to me that it is not just subscripts/superscripts/fractions that are busted. But all of MathML. So bug 342533 isn't the culprit.

>It's hard for me to get a narrow regression range due to bug 342533 making
>MathML crash throughout most of that range.


To play in that range without crashing, simply s/nsnull/"" in the indicated nsFont (that's the patch I landed for bug 342533).
Flags: blocking1.9a1+
steve, any clues as to the check-in that caused this severe regression?
Severity: major → blocker
No, this doesn't ring any bells, though it might be related to bug 346222.  Actually, that's unlikely because I don't see the problem in system from 20060713.

When I load the MathML start page, it's really not that bad. (On Windows with ac_add_options --enable-default-toolkit=windows)  Radicals, fences and characters all seem OK.  And they stretch as though their content were layed out correctly. Accents, scripts and fractions seem broken.  Also, notice how the inline matrix doesn't work.

Certainly better than what I see when debugging Cairo (bug 324857).  
I think this was caused by my patch for bug 323737. No problem in build from 2006/07/18.
I also had to change the signature of nsIMathMLFrame::Stretch() and some helper functions.

This is all just a continuation of bug 323737.  Feel free to move the patch there if that makes more sense.
I am having this feeling that the fallout from changing the signature of ::ReflowError in bug 323737 may have gone too far than anticipated. I am having second thoughts at this stage. Let's revert to where we started:
1) backout the patch of bug 323737, and 
2) fix all the call sites of ::ReflowError to be preceded by: 
+    aStatus = NS_FRAME_COMPLETE;
+    NS_FRAME_SET_TRUNCATION(aStatus, aReflowState, aDesiredSize);
That won't work.  All the other uses of ReflowError() come via Place(), which doesn't forward the aStatus/aReflowState args.
If the aStatus/aReflowState args are not set somewhere, that should probably mean that they do not matter there. So it may not be necessary to worry there.
It turns out that mroot is the only element which has this error return out of ::Reflow().  All other calls into ::ReflowError() come via Place() and Place() sets the status/state args as desired.  

Hence my original patch for bug 323737 is the one we should have taken.
Flags: blocking1.9-
Whiteboard: [wanted-1.9]
Fixed with the proper patch for bug 323737.
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
Flags: wanted1.9+
Whiteboard: [wanted-1.9]
I checked in a reftest to check that msub != msup.
Flags: in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: