Module: wine Branch: master Commit: 7170a20239fc74fdb9ac6c69734070cb405abc7f URL: http://source.winehq.org/git/wine.git/?a=commit;h=7170a20239fc74fdb9ac6c6973...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Sep 10 16:57:19 2009 +0200
dxgi: Add a separate function for dxgi_adapter initialization.
---
dlls/dxgi/adapter.c | 10 +++++++++- dlls/dxgi/dxgi_main.c | 5 +---- dlls/dxgi/dxgi_private.h | 3 ++- 3 files changed, 12 insertions(+), 6 deletions(-)
diff --git a/dlls/dxgi/adapter.c b/dlls/dxgi/adapter.c index d2c64ad..2bc5fcc 100644 --- a/dlls/dxgi/adapter.c +++ b/dlls/dxgi/adapter.c @@ -142,7 +142,7 @@ static UINT STDMETHODCALLTYPE dxgi_adapter_get_ordinal(IWineDXGIAdapter *iface) return This->ordinal; }
-const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl = +static const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl = { /* IUnknown methods */ dxgi_adapter_QueryInterface, @@ -160,3 +160,11 @@ const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl = /* IWineDXGIAdapter methods */ dxgi_adapter_get_ordinal, }; + +void dxgi_adapter_init(struct dxgi_adapter *adapter, IDXGIFactory *parent, UINT ordinal) +{ + adapter->vtbl = &dxgi_adapter_vtbl; + adapter->parent = parent; + adapter->refcount = 1; + adapter->ordinal = ordinal; +} diff --git a/dlls/dxgi/dxgi_main.c b/dlls/dxgi/dxgi_main.c index f4acef3..876a85c 100644 --- a/dlls/dxgi/dxgi_main.c +++ b/dlls/dxgi/dxgi_main.c @@ -129,10 +129,7 @@ HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory) goto fail; }
- adapter->vtbl = &dxgi_adapter_vtbl; - adapter->refcount = 1; - adapter->ordinal = i; - adapter->parent = (IDXGIFactory *)object; + dxgi_adapter_init(adapter, (IDXGIFactory *)object, i); object->adapters[i] = (IDXGIAdapter *)adapter; }
diff --git a/dlls/dxgi/dxgi_private.h b/dlls/dxgi/dxgi_private.h index 54446ef..a5b62b8 100644 --- a/dlls/dxgi/dxgi_private.h +++ b/dlls/dxgi/dxgi_private.h @@ -64,7 +64,6 @@ struct dxgi_device };
/* IDXGIAdapter */ -extern const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl; struct dxgi_adapter { const struct IWineDXGIAdapterVtbl *vtbl; @@ -73,6 +72,8 @@ struct dxgi_adapter UINT ordinal; };
+void dxgi_adapter_init(struct dxgi_adapter *adapter, IDXGIFactory *parent, UINT ordinal); + /* IDXGISwapChain */ extern const struct IDXGISwapChainVtbl dxgi_swapchain_vtbl; struct dxgi_swapchain