Henri Verbeet : dxgi: Implement IDXGIAdapter::GetParent().
Module: wine Branch: master Commit: 5ee75364489dc0bb3a355926e5d53887cc042871 URL: http://source.winehq.org/git/wine.git/?a=commit;h=5ee75364489dc0bb3a355926e5... Author: Henri Verbeet <hverbeet(a)codeweavers.com> Date: Thu Nov 20 13:32:00 2008 +0100 dxgi: Implement IDXGIAdapter::GetParent(). --- 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; };
participants (1)
-
Alexandre Julliard