[Webkit-unassigned] [Bug 6218] CSS1: WebTextRenderer caches and re-uses fallback renderers that are based on family lists

bugzilla-daemon at opendarwin.org bugzilla-daemon at opendarwin.org
Thu Feb 23 13:33:49 PST 2006


http://bugzilla.opendarwin.org/show_bug.cgi?id=6218





------- Comment #5 from bdakin at apple.com  2006-02-23 13:33 PDT -------
I have been talking with Darin and Hyatt about the best way to solve this
problem, and there are several solutions. Most of them are architectural and
require some reorganization of font families, etc. There is one simple
solution, though, which is just to entirely get rid of the
updateGlyphMapEntry() function in WebTextRenderer.m. This function caches the
new glyph and substitute renderer in the WebTextRenderer's characterToGlyphMap;
the function makes it so that when a glyph needs to be found in the fallback
fonts, that particular glyph will only need to be looked up once for the page,
and after that, it will be cached. So there is an obvious performance trade-off
if we decide not to cache these glyphs anymore. I have done some performance
testing, and my patch does not appear to affect the PLT. However, when I run
the PLT on the following html, the performance regression becomes noticeable:

<p style="font-family:'Arabic';">
A A A A A A A A A A A A A A A A A A A A A A A A A A A 
A A A A A A A A A A A A A A A A A A A A A A A A A A A 
A A A A A A A A A A A A A A A A A A A A A A A A A A A
A A A A A A A A A A A A A A A A A A A A A A A A A A A
</p> 

I am not sure what kind of trade-offs we are willing to make. I have attached
the patch for now anyway.


-- 
Configure bugmail: http://bugzilla.opendarwin.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug, or are watching the assignee.



More information about the webkit-unassigned mailing list