Closed Bug 530006 Opened 15 years ago Closed 15 years ago

mAttributesDict in gfxCoreTextFont constructor is unitialized

Categories

(Core :: Graphics, defect)

x86
macOS
defect
Not set
normal

Tracking

()

RESOLVED DUPLICATE of bug 527555

People

(Reporter: jtd, Unassigned)

Details

Crash report on trunk:
http://crash-stats.mozilla.com/report/index/59d931b3-f32b-45de-b92e-c1f202091117

http://hg.mozilla.org/mozilla-central/annotate/487808781b1f/gfx/thebes/src/gfxCoreTextFonts.cpp#l127

// InitMetrics will create the mCTFont (possibly taking account of sizeAdjust)
InitMetrics();
if (!mIsValid) {
  return;
}

// Set up the default attribute dictionary that we will need each time we create a CFAttributedString
mAttributesDict =
  CFDictionaryCreate(kCFAllocatorDefault,
             (const void**) &kCTFontAttributeName,
             (const void**) &mCTFont,
             1, // count of attributes
             &kCFTypeDictionaryKeyCallBacks,
             &kCFTypeDictionaryValueCallBacks);


If the font has funky metrics, mAttributesDict will not be initialized causing a crash in the destructor.
Looks like this occurs a lot but with different signatures:

CFRelease-ff3.7a1pre-mac-06f5cea4-fb63-4c8d-b5b5-716d92091111.json.gz
0|0|CoreFoundation|CFRelease|||0xc4
0|1|XUL|gfxCoreTextFont::CreateCTFontWithDisabledLigatures(unsigned long, float)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:aa800589db70|259|0xa
0|2|XUL|GetOrMakeCTFont|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:aa800589db70|559|0x9
0|3|XUL|gfxCoreTextFontGroup::WhichSystemFontSupportsChar(unsigned int)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:aa800589db70|1331|0x9

CoreFoundation0xc500-ff3.7a1pre-mac-1500f92e-6dd6-4238-8927-68e842091109.json.gz
0|0|CoreFoundation||||0xc500
0|1|XUL|gfxCoreTextFont::CreateCTFontWithDisabledLigatures(unsigned long, float)|hg:hg.mozilla.org/projects/electrolysis:gfx/thebes/src/gfxCoreTextFonts.cpp:88f0199e8284|259|0xa
0|2|XUL|GetOrMakeCTFont|hg:hg.mozilla.org/projects/electrolysis:gfx/thebes/src/gfxCoreTextFonts.cpp:88f0199e8284|559|0x9
0|3|XUL|gfxCoreTextFontGroup::FindCTFont(nsAString_internal const&, nsACString_internal const&, void*)|hg:hg.mozilla.org/projects/electrolysis:gfx/thebes/src/gfxCoreTextFonts.cpp:88f0199e8284|644|0xd

_cairo_atomic_int_dec_and_test-ff3.7a1pre-mac-0277d832-ba92-41f7-8a49-c24fc2091115.json.gz
0|0|XUL|_cairo_atomic_int_dec_and_test|hg:hg.mozilla.org/mozilla-central:gfx/cairo/cairo/src/cairo-atomic.c:487808781b1f|58|0x3
0|1|XUL|_moz_cairo_scaled_font_destroy|hg:hg.mozilla.org/mozilla-central:gfx/cairo/cairo/src/cairo-scaled-font.c:487808781b1f|1173|0xa
0|2|XUL|gfxCoreTextFont::CreateCTFontWithDisabledLigatures(unsigned long, float)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:487808781b1f|256|0xa
0|3|XUL|GetOrMakeCTFont|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:487808781b1f|559|0x9

_moz_cairo_font_face_destroy-ff3.7a1pre-mac-1a448545-36e9-4e52-ab3e-74e222091116.json.gz
0|0|XUL|_moz_cairo_font_face_destroy|hg:hg.mozilla.org/mozilla-central:gfx/cairo/cairo/src/cairo-font-face.c:69a4a21d9b84|122|0x4
0|1|XUL|gfxCoreTextFont::CreateCTFontWithDisabledLigatures(unsigned long, float)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:69a4a21d9b84|257|0xa
0|2|XUL|GetOrMakeCTFont|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:69a4a21d9b84|559|0x9
0|3|XUL|gfxCoreTextFontGroup::WhichSystemFontSupportsChar(unsigned int)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:69a4a21d9b84|1331|0x9

libobjc.A.dylib0x5edb-ff3.7a1pre-mac-84b895c8-1254-4991-af5a-b8d952091110.json.gz
0|0|libobjc.A.dylib||||0x5edb
0|1|XUL|gfxCoreTextFont::CreateCTFontWithDisabledLigatures(unsigned long, float)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:07e74f1f0561|259|0xa
0|2|XUL|GetOrMakeCTFont|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:07e74f1f0561|559|0x9
0|3|XUL|gfxCoreTextFontGroup::WhichSystemFontSupportsChar(unsigned int)|hg:hg.mozilla.org/mozilla-central:gfx/thebes/src/gfxCoreTextFonts.cpp:07e74f1f0561|1331|0x9
This is already fixed on trunk.
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → DUPLICATE
You need to log in before you can comment on or make changes to this bug.