crash [@ usp10.dll!otlClassDef::getClass() ] when trying to view samples of all unicode ranges

RESOLVED FIXED

Status

()

Core
Graphics
--
critical
RESOLVED FIXED
12 years ago
7 years ago

People

(Reporter: Régis Caspar, Assigned: Stuart Parmenter)

Tracking

({crash, regression})

Trunk
x86
Windows XP
crash, regression
Points:
---

Firefox Tracking Flags

(Not tracked)

Details

(crash signature, URL)

Attachments

(2 attachments)

(Reporter)

Description

12 years ago
Current Firefox nightly is crashing when visiting URL. This page is a test page trying to display a sample of all existing unicode range. (the crash could be due to a bad font).
My debug build assert: "###!!! ASSERTION: Failed to place -- we should never hit this: 'SUCCEEDED(rv)', file c:/mozilla/mozilla/gfx/thebes/src/gfxWindowsFonts.cpp, line 1222"
Then crash (will attach infos)

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060616 Minefield/3.0a1 ID:2006061617 [cairo]

Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060616 Firefox/3.0a1 [debug, cairo]

TB19970798Q
(Reporter)

Comment 1

12 years ago
Created attachment 225987 [details]
stack trace, vars (UTF-8 encoded)

-> regression? (I visited this page some time ago with a cairo build without any problem)
(Assignee)

Comment 2

12 years ago
Can you turn on logging -- set NSPR_LOG_MODULES=winfonts:5 NSPR_LOG_FILE=c:\foo.log environment variables and look at the bottom of the file to see what font it was trying to use?
Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.9a1) Gecko/20060617 Minefield/3.0a1
Tried it on two computers but I can't make it crash.
(Reporter)

Comment 4

12 years ago
(In reply to comment #2)
> Can you turn on logging -- set NSPR_LOG_MODULES=winfonts:5
> NSPR_LOG_FILE=c:\foo.log environment variables and look at the bottom of the
> file to see what font it was trying to use?
OK, from the log:
0[23f58e8]: Trying to find fonts for: th (LANG_THAI)
0[23f58e8]: Looking for other fonts to support the string:
0[23f58e8]:  - 0x0e01
0[23f58e8]: Got back: Kinnari, PakType Naqsh, Angsana New, MPH 2B Damase, TITUS Cyberbit Basic, JasmineUPC, Caslon, DilleniaUPC, Norasi, Courier ProportionalThai, KodchiangUPC, Bitstream Cyberbit, AngsanaUPC, EucrosiaUPC, Adobe Thai, Bitstream CyberBase, Code2000, Garuda, BrowalliaUPC, LilyUPC, Saysettha OT, Courier MonoThai, FreesiaUPC, Tahoma, Browallia New, Microsoft Sans Serif, CordiaUPC, Fixedsys Excelsior 2.00, IrisUPC, Arial Unicode MS
0[23f58e8]: trying: Kinnari
0[23f58e8]: Kinnari - worked
0[23f58e8]: ###!!! ASSERTION: Failed to place -- we should never hit this: 'SUCCEEDED(rv)', file c:/mozilla/mozilla/gfx/thebes/src/gfxWindowsFonts.cpp, line 1222
0[23f58e8]: trying: Times New Roman
0[23f58e8]: Trying to find fonts for: th (LANG_THAI)
0[23f58e8]: Looking for other fonts to support the string:
0[23f58e8]:  - 0x0e0d
0[23f58e8]: Got back: Kinnari, PakType Naqsh, Angsana New, MPH 2B Damase, TITUS Cyberbit Basic, JasmineUPC, Caslon, DilleniaUPC, Norasi, Courier ProportionalThai, KodchiangUPC, Bitstream Cyberbit, AngsanaUPC, EucrosiaUPC, Adobe Thai, Bitstream CyberBase, Code2000, Garuda, BrowalliaUPC, LilyUPC, Saysettha OT, Courier MonoThai, FreesiaUPC, Tahoma, Browallia New, Microsoft Sans Serif, CordiaUPC, Fixedsys Excelsior 2.00, IrisUPC, Arial Unicode MS
0[23f58e8]: trying: Kinnari
-> CRASH here
(Reporter)

Comment 5

12 years ago
(In reply to comment #2)
Removing the 'Kinari' font fixed the crash.

Yupi! now I see it too, with Kinnari.
Regression between 1.9a1_2006060916 and 1.9a1_2006060921 which points to bug 340590.
(Reporter)

Comment 8

12 years ago
 -> keywords += regression

Thanks for the range Ria :)
Keywords: regression
Attachment #225987 - Attachment mime type: text/plain → text/plain; charset=utf-8
(Assignee)

Comment 9

12 years ago
I'll check it out.  I'm having similar problems with another font that I've been trying to track down.
(Assignee)

Comment 10

12 years ago
Created attachment 226239 [details] [diff] [review]
fix

this fixes the crash by continueing font selection when placing fails.

it does some other things too.. tweaks font ranking a bit to provide better results.

also does better caching and avoids selecting fonts when we don't need to.
Assignee: nobody → pavlov
Status: NEW → ASSIGNED
Attachment #226239 - Flags: review?(vladimir)
(Assignee)

Updated

12 years ago
Status: ASSIGNED → RESOLVED
Last Resolved: 12 years ago
Resolution: --- → FIXED

Updated

9 years ago
Severity: normal → critical
Keywords: crash
Summary: crash [ @ usp10.dll!otlClassDef::getClass() ] when trying to view samples of all unicode ranges → crash [@ usp10.dll!otlClassDef::getClass() ] when trying to view samples of all unicode ranges
Crash Signature: [@ usp10.dll!otlClassDef::getClass() ]
You need to log in before you can comment on or make changes to this bug.