mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-10-19 16:25:38 +00:00
Bug 1584856 - patch 1 - Add some missing null-checks in dwrite font code. r=lsalzman
Differential Revision: https://phabricator.services.mozilla.com/D47788 --HG-- extra : moz-landing-system : lando
This commit is contained in:
parent
2769c33faa
commit
39469143d6
@ -941,8 +941,14 @@ gfxFontEntry* gfxDWriteFontList::CreateFontEntry(
|
||||
#endif
|
||||
RefPtr<IDWriteFontFamily> family;
|
||||
collection->GetFontFamily(aFamily->Index(), getter_AddRefs(family));
|
||||
if (!family) {
|
||||
return nullptr;
|
||||
}
|
||||
RefPtr<IDWriteFont> font;
|
||||
family->GetFont(aFace->mIndex, getter_AddRefs(font));
|
||||
if (!font) {
|
||||
return nullptr;
|
||||
}
|
||||
nsAutoCString faceName;
|
||||
HRESULT hr = GetDirectWriteFontName(font, faceName);
|
||||
if (FAILED(hr)) {
|
||||
@ -1001,7 +1007,7 @@ void gfxDWriteFontList::GetFacesInitDataForFamily(
|
||||
for (unsigned i = 0; i < family->GetFontCount(); ++i) {
|
||||
RefPtr<IDWriteFont> dwFont;
|
||||
family->GetFont(i, getter_AddRefs(dwFont));
|
||||
if (dwFont->GetSimulations() != DWRITE_FONT_SIMULATIONS_NONE) {
|
||||
if (!dwFont || dwFont->GetSimulations() != DWRITE_FONT_SIMULATIONS_NONE) {
|
||||
continue;
|
||||
}
|
||||
DWRITE_FONT_STYLE dwstyle = dwFont->GetStyle();
|
||||
|
@ -446,6 +446,9 @@ nsresult gfxPlatformFontList::InitFontList() {
|
||||
if (StaticPrefs::gfx_e10s_font_list_shared_AtStartup() &&
|
||||
!gfxPlatform::InSafeMode()) {
|
||||
for (auto i = mFontEntries.Iter(); !i.Done(); i.Next()) {
|
||||
if (!i.Data()) {
|
||||
continue;
|
||||
}
|
||||
i.Data()->mShmemCharacterMap = nullptr;
|
||||
i.Data()->mShmemFace = nullptr;
|
||||
i.Data()->mFamilyName = NS_LITERAL_CSTRING("");
|
||||
|
Loading…
Reference in New Issue
Block a user