[PATCH] d3dx9: Turn unimplemented interface ERR into a WARN.

Matteo Bruni mbruni at codeweavers.com
Wed Oct 30 04:24:44 CDT 2019


Signed-off-by: Matteo Bruni <mbruni at codeweavers.com>
---
 dlls/d3dx9_36/effect.c | 26 ++++++++++++++------------
 1 file changed, 14 insertions(+), 12 deletions(-)

diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index 7d686a435d0..63c931e1728 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -4214,41 +4214,43 @@ static HRESULT WINAPI ID3DXEffectCompilerImpl_QueryInterface(ID3DXEffectCompiler
 {
     TRACE("iface %p, riid %s, object %p.\n", iface, debugstr_guid(riid), object);
 
-    if (IsEqualGUID(riid, &IID_IUnknown) ||
-        IsEqualGUID(riid, &IID_ID3DXEffectCompiler))
+    if (IsEqualGUID(riid, &IID_IUnknown)
+            || IsEqualGUID(riid, &IID_ID3DXEffectCompiler))
     {
         iface->lpVtbl->AddRef(iface);
         *object = iface;
         return S_OK;
     }
 
-    ERR("Interface %s not found\n", debugstr_guid(riid));
+    WARN("%s not implemented, returning E_NOINTERFACE.\n", debugstr_guid(riid));
 
+    *object = NULL;
     return E_NOINTERFACE;
 }
 
 static ULONG WINAPI ID3DXEffectCompilerImpl_AddRef(ID3DXEffectCompiler *iface)
 {
-    struct ID3DXEffectCompilerImpl *This = impl_from_ID3DXEffectCompiler(iface);
+    struct ID3DXEffectCompilerImpl *compiler = impl_from_ID3DXEffectCompiler(iface);
+    ULONG refcount = InterlockedIncrement(&compiler->ref);
 
-    TRACE("iface %p: AddRef from %u\n", iface, This->ref);
+    TRACE("%p increasing refcount to %u.\n", iface, refcount);
 
-    return InterlockedIncrement(&This->ref);
+    return refcount;
 }
 
 static ULONG WINAPI ID3DXEffectCompilerImpl_Release(ID3DXEffectCompiler *iface)
 {
-    struct ID3DXEffectCompilerImpl *This = impl_from_ID3DXEffectCompiler(iface);
-    ULONG ref = InterlockedDecrement(&This->ref);
+    struct ID3DXEffectCompilerImpl *compiler = impl_from_ID3DXEffectCompiler(iface);
+    ULONG refcount = InterlockedDecrement(&compiler->ref);
 
-    TRACE("iface %p: Release from %u\n", iface, ref + 1);
+    TRACE("%p decreasing refcount to %u.\n", iface, refcount);
 
-    if (!ref)
+    if (!refcount)
     {
-        HeapFree(GetProcessHeap(), 0, This);
+        heap_free(compiler);
     }
 
-    return ref;
+    return refcount;
 }
 
 /*** ID3DXBaseEffect methods ***/
-- 
2.21.0




More information about the wine-devel mailing list