Andrew Nguyen : dxdiagn: Make the IDxDiag* interfaces conform to the IUnknown:: QueryInterface contract.
Alexandre Julliard
julliard at winehq.org
Tue Dec 22 09:58:59 CST 2009
Module: wine
Branch: master
Commit: d36e3b4a1d71ca4decbbebd6fd4053fbec94bbb3
URL: http://source.winehq.org/git/wine.git/?a=commit;h=d36e3b4a1d71ca4decbbebd6fd4053fbec94bbb3
Author: Andrew Nguyen <arethusa26 at gmail.com>
Date: Tue Dec 22 04:14:56 2009 -0600
dxdiagn: Make the IDxDiag* interfaces conform to the IUnknown::QueryInterface contract.
---
dlls/dxdiagn/container.c | 3 +++
dlls/dxdiagn/provider.c | 3 +++
2 files changed, 6 insertions(+), 0 deletions(-)
diff --git a/dlls/dxdiagn/container.c b/dlls/dxdiagn/container.c
index 621579b..e02d1d1 100644
--- a/dlls/dxdiagn/container.c
+++ b/dlls/dxdiagn/container.c
@@ -33,6 +33,8 @@ HRESULT WINAPI IDxDiagContainerImpl_QueryInterface(PDXDIAGCONTAINER iface, REFII
{
IDxDiagContainerImpl *This = (IDxDiagContainerImpl *)iface;
+ if (!ppobj) return E_INVALIDARG;
+
if (IsEqualGUID(riid, &IID_IUnknown)
|| IsEqualGUID(riid, &IID_IDxDiagContainer)) {
IUnknown_AddRef(iface);
@@ -41,6 +43,7 @@ HRESULT WINAPI IDxDiagContainerImpl_QueryInterface(PDXDIAGCONTAINER iface, REFII
}
WARN("(%p)->(%s,%p),not found\n",This,debugstr_guid(riid),ppobj);
+ *ppobj = NULL;
return E_NOINTERFACE;
}
diff --git a/dlls/dxdiagn/provider.c b/dlls/dxdiagn/provider.c
index 88d67b6..21bb32d 100644
--- a/dlls/dxdiagn/provider.c
+++ b/dlls/dxdiagn/provider.c
@@ -48,6 +48,8 @@ static HRESULT WINAPI IDxDiagProviderImpl_QueryInterface(PDXDIAGPROVIDER iface,
{
IDxDiagProviderImpl *This = (IDxDiagProviderImpl *)iface;
+ if (!ppobj) return E_INVALIDARG;
+
if (IsEqualGUID(riid, &IID_IUnknown)
|| IsEqualGUID(riid, &IID_IDxDiagProvider)) {
IUnknown_AddRef(iface);
@@ -56,6 +58,7 @@ static HRESULT WINAPI IDxDiagProviderImpl_QueryInterface(PDXDIAGPROVIDER iface,
}
WARN("(%p)->(%s,%p),not found\n",This,debugstr_guid(riid),ppobj);
+ *ppobj = NULL;
return E_NOINTERFACE;
}
More information about the wine-cvs
mailing list