Chromium Code Reviews| Index: ui/gfx/font_fallback_mac.mm |
| diff --git a/ui/gfx/font_fallback_mac.mm b/ui/gfx/font_fallback_mac.mm |
| index 6cfc7e36b8b713de6d9cfacfd347fcc0279bd98e..6a4d66f1d4083966dc287370e117db35e98bb5c8 100644 |
| --- a/ui/gfx/font_fallback_mac.mm |
| +++ b/ui/gfx/font_fallback_mac.mm |
| @@ -40,6 +40,7 @@ bool FontsEqual(CTFontRef lhs, CTFontRef rhs) { |
| } // namespace |
| std::vector<Font> GetFallbackFonts(const Font& font) { |
| + DCHECK(font.GetNativeFont()); |
| // On Mac "There is a system default cascade list (which is polymorphic, based |
| // on the user's language setting and current font)" - CoreText Programming |
| // Guide. |
| @@ -51,6 +52,8 @@ std::vector<Font> GetFallbackFonts(const Font& font) { |
| static_cast<CTFontRef>(font.GetNativeFont()), languages_cf)); |
| std::vector<Font> fallback_fonts; |
| + if (!cascade_list) |
| + return fallback_fonts; // This should only happen for an invalid |font|. |
| const CFIndex fallback_count = CFArrayGetCount(cascade_list); |
|
tapted
2017/06/28 03:46:10
Currently it's this line that crashes -- null can'
|
| for (CFIndex i = 0; i < fallback_count; ++i) { |