[Webkit-unassigned] [Bug 37747] New: Crash in FontFallbackList::determinePitch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Apr 16 22:47:28 PDT 2010
https://bugs.webkit.org/show_bug.cgi?id=37747
Summary: Crash in FontFallbackList::determinePitch
Product: WebKit
Version: 528+ (Nightly build)
Platform: PC
OS/Version: Windows 7
Status: UNCONFIRMED
Severity: Critical
Priority: P2
Component: Layout and Rendering
AssignedTo: webkit-unassigned at lists.webkit.org
ReportedBy: zhangxm at yahoo.cn
On Windows 7 Platform,Get Nightly build r57720,
Build and run WinLanucher.exe, it will crash every time。
debugging it in Visual Studio 20005, find that the problem is caused by this
function
void FontFallbackList::determinePitch(const Font* font) const
{
const FontData* fontData = primaryFontData(font);
if (!fontData->isSegmented())
m_pitch = static_cast<const SimpleFontData*>(fontData)->pitch();
else {
const SegmentedFontData* segmentedFontData = static_cast<const
SegmentedFontData*>(fontData);
unsigned numRanges = segmentedFontData->numRanges();
if (numRanges == 1)
m_pitch = segmentedFontData->rangeAt(0).fontData()->pitch();
else
m_pitch = VariablePitch;
}
}
fontData is NULL every time。
I Step into primaryFontData() and find the real reason is the following
funciont
void FontPlatformData::platformDataInit(HFONT font, float size, HDC hdc, WCHAR*
faceName)
{
LOGFONT logfont;
GetObject(font, sizeof(logfont), &logfont);
m_cgFont.adoptCF(CGFontCreateWithPlatformFont(&logfont));
}
this function is in
webkit\webcore\platform\graphics\win\FontPlatformDataCGWin.cpp,
this function is modified at revision 55975。before this revison, this crash not
occured。
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list