Closed Bug 413274 Opened 18 years ago Closed 18 years ago

"ASSERTION: How can this ever happen?: '*aUnconstrainedSize <= scriptLevelSize'"

Categories

(Core :: MathML, defect)

defect
Not set
normal

Tracking

()

RESOLVED FIXED
mozilla1.9beta3

People

(Reporter: jruderman, Assigned: vladimir.sukhoy)

References

Details

(Keywords: assertion, regression, testcase)

Attachments

(2 files, 2 obsolete files)

Attached file testcase
Loading the testcase triggers: ###!!! ASSERTION: How can this ever happen?: '*aUnconstrainedSize <= scriptLevelSize', file /Users/jruderman/trunk/mozilla/layout/style/nsRuleNode.cpp, line 1989 ###!!! ASSERTION: scriptminsize should never be making things bigger: 'aFont->mScriptUnconstrainedSize <= aFont->mSize', file /Users/jruderman/trunk/mozilla/layout/style/nsRuleNode.cpp, line 2397 The first assertion is part of code added in bug 355548, so I'm assuming this is a regression from bug 355548.
This looks like an overflow issue.
vlad, I'd love it if you could take this, it shouldn't be too hard, just need some overflow checking in the new font code in nsRuleNode.cpp
ok, I'll see what I can do..
Attached patch overflow fix (obsolete) — Splinter Review
Since negative scriptsizemultipliers are not parsed, AFAUI we only need to check for overflow, not underflow in that code.
Attachment #299085 - Flags: review?(roc)
Looks fine but I'd actually prefer it if you didn't use a local variable, because the name 'x' isn't very useful
Attached patch without x (obsolete) — Splinter Review
Attachment #299085 - Attachment is obsolete: true
Attachment #299116 - Flags: review?(roc)
Attachment #299085 - Flags: review?(roc)
You forgot the second NSToCoordRound
Comment on attachment 299116 [details] [diff] [review] without x oops, nevermind
Attachment #299116 - Attachment is obsolete: true
Attachment #299116 - Flags: review?(roc)
Sorry, messed up that one, was doing several things at a time :(
Attachment #299124 - Flags: review?(roc)
Comment on attachment 299124 [details] [diff] [review] with 2nd NSToCoordRound :-)
Attachment #299124 - Flags: superreview+
Attachment #299124 - Flags: review?(roc)
Attachment #299124 - Flags: review+
Comment on attachment 299124 [details] [diff] [review] with 2nd NSToCoordRound this minor patch eliminates numeric overflow in script level size computations for mathml.
Attachment #299124 - Flags: approval1.9?
Comment on attachment 299124 [details] [diff] [review] with 2nd NSToCoordRound a=beltzner for 1.9
Attachment #299124 - Flags: approval1.9? → approval1.9+
Keywords: checkin-needed
Assignee: nobody → vladimir.sukhoy
Checking in layout/style/nsRuleNode.cpp; /cvsroot/mozilla/layout/style/nsRuleNode.cpp,v <-- nsRuleNode.cpp new revision: 1.235; previous revision: 1.234 done
Status: NEW → RESOLVED
Closed: 18 years ago
Flags: in-testsuite?
Keywords: checkin-needed
OS: Mac OS X → All
Hardware: PC → All
Resolution: --- → FIXED
Target Milestone: --- → mozilla1.9 M11
Crashtest checked in.
Flags: in-testsuite? → in-testsuite+
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: