Bug 1577578 - Make font-list IPC messages include a release assertion that the gfxPlatformFontList has been initialized. r=jwatt

Differential Revision: https://phabricator.services.mozilla.com/D45340

--HG--
extra : moz-landing-system : lando
This commit is contained in:
Jonathan Kew 2019-09-10 15:58:40 +00:00
Родитель 520ede767d
Коммит 013da1e4e0
1 изменённых файлов: 15 добавлений и 10 удалений

Просмотреть файл

@ -5058,38 +5058,43 @@ mozilla::ipc::IPCResult ContentParent::RecvGetGraphicsDeviceInitData(
mozilla::ipc::IPCResult ContentParent::RecvGetFontListShmBlock(
const uint32_t& aGeneration, const uint32_t& aIndex,
mozilla::ipc::SharedMemoryBasic::Handle* aOut) {
gfxPlatformFontList::PlatformFontList()->ShareFontListShmBlockToProcess(
aGeneration, aIndex, Pid(), aOut);
auto fontList = gfxPlatformFontList::PlatformFontList();
MOZ_RELEASE_ASSERT(fontList, "gfxPlatformFontList not initialized?");
fontList->ShareFontListShmBlockToProcess(aGeneration, aIndex, Pid(), aOut);
return IPC_OK();
}
mozilla::ipc::IPCResult ContentParent::RecvInitializeFamily(
const uint32_t& aGeneration, const uint32_t& aFamilyIndex) {
gfxPlatformFontList::PlatformFontList()->InitializeFamily(aGeneration,
aFamilyIndex);
auto fontList = gfxPlatformFontList::PlatformFontList();
MOZ_RELEASE_ASSERT(fontList, "gfxPlatformFontList not initialized?");
fontList->InitializeFamily(aGeneration, aFamilyIndex);
return IPC_OK();
}
mozilla::ipc::IPCResult ContentParent::RecvSetCharacterMap(
const uint32_t& aGeneration, const mozilla::fontlist::Pointer& aFacePtr,
const gfxSparseBitSet& aMap) {
gfxPlatformFontList::PlatformFontList()->SetCharacterMap(aGeneration,
aFacePtr, aMap);
auto fontList = gfxPlatformFontList::PlatformFontList();
MOZ_RELEASE_ASSERT(fontList, "gfxPlatformFontList not initialized?");
fontList->SetCharacterMap(aGeneration, aFacePtr, aMap);
return IPC_OK();
}
mozilla::ipc::IPCResult ContentParent::RecvInitOtherFamilyNames(
const uint32_t& aGeneration, const bool& aDefer, bool* aLoaded) {
gfxPlatformFontList::PlatformFontList()->InitOtherFamilyNames(aGeneration,
aDefer);
auto fontList = gfxPlatformFontList::PlatformFontList();
MOZ_RELEASE_ASSERT(fontList, "gfxPlatformFontList not initialized?");
fontList->InitOtherFamilyNames(aGeneration, aDefer);
*aLoaded = true;
return IPC_OK();
}
mozilla::ipc::IPCResult ContentParent::RecvSetupFamilyCharMap(
const uint32_t& aGeneration, const mozilla::fontlist::Pointer& aFamilyPtr) {
gfxPlatformFontList::PlatformFontList()->SetupFamilyCharMap(aGeneration,
aFamilyPtr);
auto fontList = gfxPlatformFontList::PlatformFontList();
MOZ_RELEASE_ASSERT(fontList, "gfxPlatformFontList not initialized?");
fontList->SetupFamilyCharMap(aGeneration, aFamilyPtr);
return IPC_OK();
}