dxgi: Implement IDXGIAdapter::GetParent().
Henri Verbeet
hverbeet at codeweavers.com
Thu Nov 20 06:32:00 CST 2008
---
dlls/dxgi/adapter.c | 6 ++++--
dlls/dxgi/dxgi_main.c | 1 +
dlls/dxgi/dxgi_private.h | 1 +
3 files changed, 6 insertions(+), 2 deletions(-)
diff --git a/dlls/dxgi/adapter.c b/dlls/dxgi/adapter.c
index 54e5143..d2c64ad 100644
--- a/dlls/dxgi/adapter.c
+++ b/dlls/dxgi/adapter.c
@@ -99,9 +99,11 @@ static HRESULT STDMETHODCALLTYPE dxgi_adapter_GetPrivateData(IWineDXGIAdapter *i
static HRESULT STDMETHODCALLTYPE dxgi_adapter_GetParent(IWineDXGIAdapter *iface, REFIID riid, void **parent)
{
- FIXME("iface %p, riid %s, parent %p stub!\n", iface, debugstr_guid(riid), parent);
+ struct dxgi_adapter *This = (struct dxgi_adapter *)iface;
- return E_NOTIMPL;
+ TRACE("iface %p, riid %s, parent %p\n", iface, debugstr_guid(riid), parent);
+
+ return IDXGIFactory_QueryInterface(This->parent, riid, parent);
}
/* IDXGIAdapter methods */
diff --git a/dlls/dxgi/dxgi_main.c b/dlls/dxgi/dxgi_main.c
index a6dc5e6..370fcdd 100644
--- a/dlls/dxgi/dxgi_main.c
+++ b/dlls/dxgi/dxgi_main.c
@@ -126,6 +126,7 @@ HRESULT WINAPI CreateDXGIFactory(REFIID riid, void **factory)
adapter->vtbl = &dxgi_adapter_vtbl;
adapter->refcount = 1;
adapter->ordinal = i;
+ adapter->parent = (IDXGIFactory *)object;
object->adapters[i] = (IDXGIAdapter *)adapter;
}
diff --git a/dlls/dxgi/dxgi_private.h b/dlls/dxgi/dxgi_private.h
index 25c54cb..95cfe58 100644
--- a/dlls/dxgi/dxgi_private.h
+++ b/dlls/dxgi/dxgi_private.h
@@ -66,6 +66,7 @@ extern const struct IWineDXGIAdapterVtbl dxgi_adapter_vtbl;
struct dxgi_adapter
{
const struct IWineDXGIAdapterVtbl *vtbl;
+ IDXGIFactory *parent;
LONG refcount;
UINT ordinal;
};
--
1.5.6.4
--------------030902000104070605060201--
More information about the wine-patches
mailing list