Nikolay Sivov : dwrite: Hide factory vtable selection in init helper.

Alexandre Julliard julliard at wine.codeweavers.com
Thu Nov 27 16:07:41 CST 2014


Module: wine
Branch: master
Commit: 4b38ced13c055514e1fbb785b91f9eaf3f4e2e29
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=4b38ced13c055514e1fbb785b91f9eaf3f4e2e29

Author: Nikolay Sivov <nsivov at codeweavers.com>
Date:   Wed Nov 26 12:23:46 2014 +0300

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)) {




More information about the wine-cvs mailing list