Closed
Bug 383216
Opened 18 years ago
Closed 18 years ago
1.8.1 branch on Linux crashes when loading wikipedia
Categories
(Core :: Layout: Text and Fonts, defect)
Tracking
()
RESOLVED
FIXED
People
(Reporter: bzbarsky, Unassigned)
References
()
Details
(Keywords: regression, Whiteboard: GTK1 only (i.e. seamonkey))
This doesn't happen on either trunk or 1.8.0 branch.
STEPS TO REPRODUCE:
1) Get a 1.8.1 branch build
2) Load http://www.wikipedia.org/
EXPECTED RESULTS: No crash.
ACTUAL RESULTS:
Program received signal SIGSEGV, Segmentation fault.
(gdb) frame
#0 0xb566f129 in nsFontMetricsGTK::LocateFont (this=0x89d01f0, aChar=66354,
aCount=@0xbfff8204) at ../../../../mozilla/gfx/src/gtk/nsFontMetricsGTK.cpp:2058
2058 if (CCMAP_HAS_CHAR_EXT(font->mCCMap, aChar))
(gdb) p font->mCCMap
$1 = (PRUint16 *) 0xb5697960
(gdb) p aChar
$2 = 66354
(gdb) p *font
$3 = (nsFontGTKSubstitute) {<nsFontGTK> = {_vptr.nsFontGTK = 0xb56999c8,
mCCMap = 0xb5697960, mCharSetInfo = 0x0, mName = 0x0, mUserDefinedFont = 0x0,
mSize = 0, mAABaseSize = 0, mBaselineAdjust = 0, mMaxAscent = 0, mMaxDescent = 0,
mFont = 0x0, mFontHolder = 0x0, mXFont = 0x0, mAlreadyCalledLoadFont = 0},
mSubstituteFont = 0x87fcfa0}
(gdb) p *font->mSubstituteFont
$5 = (nsFontGTKNormal) {<nsFontGTK> = {_vptr.nsFontGTK = 0xb5699a08, mCCMap = 0x842f50c,
mCharSetInfo = 0xb5697ae0,
mName = 0x87fcf58 "-adobe-helvetica-medium-r-normal--12-120-75-75-p-*-iso8859-1",
mUserDefinedFont = 0x0, mSize = 12, mAABaseSize = 0, mBaselineAdjust = 0,
mMaxAscent = 11, mMaxDescent = 3, mFont = 0x87fbaf0, mFontHolder = 0x0,
mXFont = 0x87e5f58, mAlreadyCalledLoadFont = 1}, <No data fields>}
Not sure what other info you want, but let me know if you need something.
Flags: blocking1.8.1.5?
Comment 1•18 years ago
|
||
A crash at CCMAP_HAS_CHAR_EXT with a supplementary character looks like a dupe of bug 365923 to me.
Depends on: 365923
![]() |
Reporter | |
Comment 2•18 years ago
|
||
Very possible, yes.
Comment 3•18 years ago
|
||
Moving this to the "wanted" list rather than outright blocker (though maybe the seamonkey folks will want to block on it). We really need some traction in bug 365923 to get this in, but will look at approving it once it's ready.
Flags: blocking1.8.1.5? → wanted1.8.1.x+
Whiteboard: GTK1 only (i.e. seamonkey)
Comment 4•18 years ago
|
||
Looks like a dupe of bug 365923 to me.
Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 16384 (LWP 4035)]
0x41eff788 in nsFontMetricsGTK::LocateFont(unsigned, int&) (this=0x88b2820, aChar=66354, aCount=@0xbfff7c4c) at nsFontMetricsGTK.cpp:2058
2058 if (CCMAP_HAS_CHAR_EXT(font->mCCMap, aChar))
(gdb) list
2053 PRInt32 i;
2054
2055 // see if one of our loaded fonts can represent the character
2056 for (i = 0; i < aCount; ++i) {
2057 font = (nsFontGTK*)mLoadedFonts[i];
2058 if (CCMAP_HAS_CHAR_EXT(font->mCCMap, aChar))
2059 return font;
2060 }
2061
2062 font = FindFont(aChar);
(gdb) p font->mCCMap
$1 = (PRUint16 *) 0x41f20fe0
(gdb) p gDoubleByteSpecialCharsCCMap
$2 = (PRUint16 *) 0x41f20fe0
(gdb) p/x aChar
$3 = 0x10332
Comment 5•18 years ago
|
||
(In reply to comment #0)
> Not sure what other info you want, but let me know if you need something.
Just to make sure we're seeing the same thing:
p font->mCCMap
p gDoubleByteSpecialCharsCCMap
Comment 6•18 years ago
|
||
This should be fixed now, by bug 365923.
(You need to update gfx/src/gtk/nsFontMetricsGTK.cpp)
Comment 7•18 years ago
|
||
Boris, please reopen if you still see this in 1.8.1.5
-> FIXED (by bug 365923)
Status: NEW → RESOLVED
Closed: 18 years ago
Resolution: --- → FIXED
![]() |
Reporter | |
Comment 8•18 years ago
|
||
Yeah, looks fixed. Thanks!
You need to log in
before you can comment on or make changes to this bug.
Description
•