Summary: | Specify a cascade list consisting of the last resort font for Core Text | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | mitz | ||||||
Component: | Text | Assignee: | mitz | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | rniwa, sam | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Unspecified | ||||||||
OS: | Unspecified | ||||||||
Attachments: |
|
Description
mitz
2011-07-18 13:38:37 PDT
This would prevent Core Text from uselessly going through its longer default cascade list. WebKit never uses the results of Core Text’s fallback logic anyway. Created attachment 101199 [details]
Patch
Committed r91209. <http://trac.webkit.org/r91209> Comment on attachment 101199 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=101199&action=review > Source/WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm:183 > +static CTFontDescriptorRef cascadeToLastResortFontDescriptor() > +{ > + static CTFontDescriptorRef descriptor; > + if (descriptor) > + return descriptor; I like writing the two-function form of this sort of thing rather than the early return version. > Source/WebCore/platform/graphics/cocoa/FontPlatformDataCocoa.mm:198 > + if (m_CTFont) > return m_CTFont.get(); Same comment here. The following tests started failing on Chromium Mac 10.5 after this patch was landed: fast/blockflow/broken-ideograph-small-caps.html fast/blockflow/broken-ideographic-font.html fast/css/custom-font-xheight.html In particular, fast/css/custom-font-xheight.html is also failing on Mac Leopard as well: http://build.webkit.org/results/Leopard%20Intel%20Release%20(Tests)/r91215%20(34147)/results.html Created attachment 101230 [details]
actual result for broken-ideograph-small-caps on Chromium Mac 10.5
Looking at the actual result for broken-ideograph-small-caps, something is going wrong here.
The blame list is http://trac.webkit.org/log/trunk/?rev=91211&stop_rev=91204&limit=100&verbose=on but http://trac.webkit.org/changeset/91205 is only applicable to plugin according to jamesr. I will build on Leopard and see if I can reproduce any of the failures. |