Module: wine Branch: master Commit: 45c7b47b065c5f5876e96e7d1e130292fa626625 URL: http://source.winehq.org/git/wine.git/?a=commit;h=45c7b47b065c5f5876e96e7d1e...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Apr 5 19:55:38 2012 +0200
d3dx9: Don't return a pointer to the implementation in ID3DXSpriteImpl_QueryInterface().
---
dlls/d3dx9_36/sprite.c | 16 ++++++++++------ 1 files changed, 10 insertions(+), 6 deletions(-)
diff --git a/dlls/d3dx9_36/sprite.c b/dlls/d3dx9_36/sprite.c index d81e13f..a8cbb53 100644 --- a/dlls/d3dx9_36/sprite.c +++ b/dlls/d3dx9_36/sprite.c @@ -69,17 +69,21 @@ static inline ID3DXSpriteImpl *impl_from_ID3DXSprite(ID3DXSprite *iface) return CONTAINING_RECORD(iface, ID3DXSpriteImpl, ID3DXSprite_iface); }
-static HRESULT WINAPI ID3DXSpriteImpl_QueryInterface(ID3DXSprite *iface, REFIID riid, void **object) +static HRESULT WINAPI ID3DXSpriteImpl_QueryInterface(ID3DXSprite *iface, REFIID riid, void **out) { - ID3DXSpriteImpl *This = impl_from_ID3DXSprite(iface); + TRACE("iface %p, riid %s, out %p.\n", iface, debugstr_guid(riid), out);
- TRACE("(%p): QueryInterface from %s\n", This, debugstr_guid(riid)); - if(IsEqualGUID(riid, &IID_IUnknown) || IsEqualGUID(riid, &IID_ID3DXSprite)) { + if (IsEqualGUID(riid, &IID_ID3DXSprite) + || IsEqualGUID(riid, &IID_IUnknown)) + { IUnknown_AddRef(iface); - *object=This; + *out = iface; return S_OK; } - WARN("(%p)->(%s, %p): not found\n", iface, debugstr_guid(riid), *object); + + WARN("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(riid)); + + *out = NULL; return E_NOINTERFACE; }