[PATCH 6/6] dxgi: Add a separate function for dxgi_adapter initialization.
Henri Verbeet
hverbeet at codeweavers.com
Thu Sep 10 09:57:19 CDT 2009
---
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
--
1.6.0.6
More information about the wine-patches
mailing list