Closed Bug 874053 Opened 12 years ago Closed 12 years ago

crash in gfxFontEntry::TestCharacterMap

Categories

(Core :: Graphics, defect)

24 Branch
x86_64
All
defect
Not set
critical

Tracking

()

VERIFIED FIXED
mozilla24
Tracking Status
firefox23 --- unaffected
firefox24 --- verified

People

(Reporter: marcia, Assigned: jfkthame)

References

Details

(Keywords: crash, regression)

Crash Data

Attachments

(1 file)

This bug was filed from the Socorro interface and is 
report bp-fb47e612-9353-46a2-9695-442532130520 .
============================================================= 

Seen while looking at trunk crash stats - https://crash-stats.mozilla.com/report/list?signature=gfxFontEntry::TestCharacterMap%28unsigned%20int%29. Some dupes, but some unique users have hit it.

Two comments mention Google searches. 

Frame 	Module 	Signature 	Source
0 	XUL 	gfxFontEntry::TestCharacterMap 	obj-firefox/x86_64/dist/include/nsTArray.h:363
1 	XUL 	gfxFontGroup::FindFontForChar 	gfx/thebes/gfxFont.h:306
2 	XUL 	void gfxFontGroup::ComputeRanges<unsigned char> 	gfx/thebes/gfxFont.cpp:4769
3 	XUL 	nsRuleNode::WalkRuleTree 	layout/style/nsRuleNode.cpp:2105
4 	XUL 	void gfxFontGroup::InitScriptRun<unsigned char> 	gfx/thebes/gfxFont.cpp:4457
5 	XUL 	void gfxFontGroup::InitTextRun<unsigned char> 	gfx/thebes/gfxFont.cpp:4369
6 	XUL 	nsRuleNode::WalkRuleTree 	layout/style/nsRuleNode.cpp:2105
7 	XUL 	AtomImpl::ToUTF8String 	nsTSubstring.h:85
8 	XUL 	gfxPlatform::GetFontPrefLangFor 	obj-firefox/x86_64/dist/include/nsTSubstring.h:85
9 	XUL 	gfxAlternateValue* nsTArray_Impl<gfxAlternateValue, nsTArrayInfallibleAllocator> 	obj-firefox/x86_64/dist/include/nsTArray.h:1044
10 	XUL 	gfxFontStyle::gfxFontStyle 	obj-firefox/x86_64/dist/include/nsTArray.h:1044
11 	XUL 	gfxPlatformMac::CreateFontGroup 	gfx/thebes/gfxPlatformMac.cpp:173
12 	XUL 	nsFontMetrics::Init 	obj-firefox/x86_64/dist/include/nsAutoPtr.h:880
13 	libmozglue.dylib 	arena_malloc 	jemalloc.c:1722
14 	libmozglue.dylib 	je_malloc 	jemalloc.c:4247
15 	libsystem_c.dylib 	libsystem_c.dylib@0x2d1b3 	
16 	XUL 	gfxTextRun::Create 	gfx/thebes/gfxSkipChars.h:106
17 	XUL 	gfxFontGroup::MakeTextRun 	gfx/thebes/gfxFont.cpp:4291
18 	XUL 	BuildTextRunsScanner::BuildTextRunForFrames 	layout/generic/nsTextFrameThebes.cpp:559
This is a regression from bug 847344. If there's a font installed on the system that has no usable 'cmap' table (meaning we're not going to be able to actually use it for anything, but it still shows up in the font list), the MacOSFontEntry::ReadCMAP() will incorrectly leave the mCharacterMap pointer null, rather than pointing to a valid (but empty) charmap.

I'll post a patch tomorrow.
Assignee: nobody → jfkthame
Blocks: 847344
Keywords: regression
Hardware: All → x86_64
https://hg.mozilla.org/integration/mozilla-inbound/rev/f7beb3f7dceb

Marcia, if you could confirm that the crashes stop happening once this goes out in Nightly, that'd be great. I don't have a reproducible testcase (I believe it's dependent on the user having some kind of weird font installed, such as maybe an old bitmap-only font?), but AFAICS this should prevent the issue.
Target Milestone: --- → mozilla24
QA Contact: mozillamarcia.knous
https://hg.mozilla.org/mozilla-central/rev/f7beb3f7dceb
Status: NEW → RESOLVED
Closed: 12 years ago
Resolution: --- → FIXED
Crash Signature: [@ gfxFontEntry::TestCharacterMap(unsigned int)] → [@ gfxFontEntry::TestCharacterMap(unsigned int)] [@ gfxSparseBitSet::Union(gfxSparseBitSet const&)]
OS: Mac OS X → All
Looks good on the crash stats side as the last crashes visible in the last week for both signatures happened with 20130521114340.
Status: RESOLVED → VERIFIED
No crashes in the crashstats for the last 4 weeks.
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: