Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Cherry-pick a595ddd. rdar://117805319
Adding last resort font to System Font fallback set for PUA characters https://bugs.webkit.org/show_bug.cgi?id=264737 rdar://117805319 Reviewed by Brent Fulgham. Until now, when we are purging inactive font data, we would just clear the glyph page cache if we had to purge system fallback font. This means that we consider glyph page cache would only point to fonts from system fonts fallback. When we are handling unicode's in the Private-User-Area (PUA) block, we shouldn't fallback to system fonts searching for a font that can render it, per spec: https://www.w3.org/TR/css-fonts-4/#char-handling-issues Instead, we render the glyph 0 with the last resort font. However, this font is just added to the custom font cache, and its font pointer in the Glyph Page cache is not cleared during memory pressure. We should add this font to the system font fallback set, to make sure that the associated font pointer is removed from the glyph page cache during memory pressure. * LayoutTests/fonts/font-cache-memory-pressure-crash.html: Added. * Source/WebCore/platform/graphics/FontCascadeFonts.cpp: (WebCore::FontCascadeFonts::glyphDataForVariant): * LayoutTests/fonts/font-cache-memory-pressure-crash-expected.txt: Added. Canonical link: https://commits.webkit.org/267815.567@safari-7617-branch Canonical link: https://commits.webkit.org/267815.567@safari-7617.1.17.11-branch
- Loading branch information