From: Nikolay Sivov Subject: [PATCH 3/4] dwrite: Hide factory vtable selection in init helper Message-Id: <5476C55B.9070004@codeweavers.com> Date: Thu, 27 Nov 2014 09:31:55 +0300 --- From b97278a0fe8e0f70009aa1c8e23efee71c3ba321 Mon Sep 17 00:00:00 2001 From: Nikolay Sivov Date: Wed, 26 Nov 2014 12:23:46 +0300 Subject: [PATCH 3/4] dwrite: Hide factory vtable selection in init helper --- dlls/dwrite/main.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/dlls/dwrite/main.c b/dlls/dwrite/main.c index ac7aff5..82a28d7 100644 --- a/dlls/dwrite/main.c +++ b/dlls/dwrite/main.c @@ -1067,9 +1067,9 @@ static const struct IDWriteFactoryVtbl shareddwritefactoryvtbl = { dwritefactory_CreateGlyphRunAnalysis }; -static void init_dwritefactory(struct dwritefactory *factory, const struct IDWriteFactoryVtbl *vtbl) +static void init_dwritefactory(struct dwritefactory *factory, DWRITE_FACTORY_TYPE type) { - factory->IDWriteFactory_iface.lpVtbl = vtbl; + factory->IDWriteFactory_iface.lpVtbl = type == DWRITE_FACTORY_TYPE_SHARED ? &shareddwritefactoryvtbl : &dwritefactoryvtbl; factory->ref = 1; factory->localfontfileloader = NULL; factory->system_collection = NULL; @@ -1099,7 +1099,7 @@ HRESULT WINAPI DWriteCreateFactory(DWRITE_FACTORY_TYPE type, REFIID riid, IUnkno factory = heap_alloc(sizeof(struct dwritefactory)); if (!factory) return E_OUTOFMEMORY; - init_dwritefactory(factory, type == DWRITE_FACTORY_TYPE_SHARED ? &shareddwritefactoryvtbl : &dwritefactoryvtbl); + init_dwritefactory(factory, type); if (type == DWRITE_FACTORY_TYPE_SHARED) if (InterlockedCompareExchangePointer((void**)&shared_factory, factory, NULL)) { -- 2.1.3