d3d9: Don't return a pointer to the implementation in IDirect3DSurface9Impl_QueryInterface().
This commit is contained in:
parent
b76f0aeee0
commit
fa3838e9de
|
@ -34,19 +34,19 @@ static inline IDirect3DSurface9Impl *impl_from_IDirect3DSurface9(IDirect3DSurfac
|
|||
static HRESULT WINAPI IDirect3DSurface9Impl_QueryInterface(IDirect3DSurface9 *iface, REFIID riid,
|
||||
void **ppobj)
|
||||
{
|
||||
IDirect3DSurface9Impl *This = impl_from_IDirect3DSurface9(iface);
|
||||
|
||||
TRACE("iface %p, riid %s, object %p.\n", iface, debugstr_guid(riid), ppobj);
|
||||
|
||||
if (IsEqualGUID(riid, &IID_IUnknown)
|
||||
|| IsEqualGUID(riid, &IID_IDirect3DResource9)
|
||||
|| IsEqualGUID(riid, &IID_IDirect3DSurface9)) {
|
||||
if (IsEqualGUID(riid, &IID_IDirect3DSurface9)
|
||||
|| IsEqualGUID(riid, &IID_IDirect3DResource9)
|
||||
|| IsEqualGUID(riid, &IID_IUnknown))
|
||||
{
|
||||
IDirect3DSurface9_AddRef(iface);
|
||||
*ppobj = This;
|
||||
*ppobj = iface;
|
||||
return S_OK;
|
||||
}
|
||||
|
||||
WARN("(%p)->(%s,%p),not found\n", This, debugstr_guid(riid), ppobj);
|
||||
WARN("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(riid));
|
||||
|
||||
*ppobj = NULL;
|
||||
return E_NOINTERFACE;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue