WINED3D: Update the QueryInterface functions of IWineD3DBase
subclasses
H. Verbeet
hverbeet at gmail.com
Sun Feb 5 13:50:13 CST 2006
All wined3d objects are subclasses of IWineD3DBase. Their
QueryInterface functions should reflect this.
Changelog:
- Update the QueryInterface functions of IWineD3DBase subclasses
-------------- next part --------------
diff --git a/dlls/wined3d/basetexture.c b/dlls/wined3d/basetexture.c
index 1df337c..6188482 100644
--- a/dlls/wined3d/basetexture.c
+++ b/dlls/wined3d/basetexture.c
@@ -62,8 +62,8 @@ HRESULT WINAPI IWineD3DBaseTextureImpl_Q
{
IWineD3DBaseTextureImpl *This = (IWineD3DBaseTextureImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
- /* FIXME: This needs to extend an IWineD3DBaseObject */
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DBaseTexture)) {
IUnknown_AddRef(iface);
diff --git a/dlls/wined3d/cubetexture.c b/dlls/wined3d/cubetexture.c
index 4cc8d0a..966d8c2 100644
--- a/dlls/wined3d/cubetexture.c
+++ b/dlls/wined3d/cubetexture.c
@@ -52,6 +52,7 @@ HRESULT WINAPI IWineD3DCubeTextureImpl_Q
IWineD3DCubeTextureImpl *This = (IWineD3DCubeTextureImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DBaseTexture)
|| IsEqualGUID(riid, &IID_IWineD3DTexture)) {
diff --git a/dlls/wined3d/device.c b/dlls/wined3d/device.c
index 6b1d3cf..d98933c 100644
--- a/dlls/wined3d/device.c
+++ b/dlls/wined3d/device.c
@@ -329,10 +329,10 @@ void WINAPI IWineD3DDeviceImpl_SetupText
HRESULT WINAPI IWineD3DDeviceImpl_QueryInterface(IWineD3DDevice *iface,REFIID riid,LPVOID *ppobj)
{
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
- /* FIXME: This needs to extend an IWineD3DBaseObject */
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DDevice)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c
index 7aa8d5d..01b4103 100644
--- a/dlls/wined3d/directx.c
+++ b/dlls/wined3d/directx.c
@@ -166,10 +166,10 @@ static void WineD3D_ReleaseFakeGLContext
HRESULT WINAPI IWineD3DImpl_QueryInterface(IWineD3D *iface,REFIID riid,LPVOID *ppobj)
{
IWineD3DDeviceImpl *This = (IWineD3DDeviceImpl *)iface;
- /* FIXME: This needs to extend an IWineD3DBaseObject */
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DDevice)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/indexbuffer.c b/dlls/wined3d/indexbuffer.c
index 8276a29..4a23f28 100644
--- a/dlls/wined3d/indexbuffer.c
+++ b/dlls/wined3d/indexbuffer.c
@@ -35,6 +35,7 @@ HRESULT WINAPI IWineD3DIndexBufferImpl_Q
IWineD3DIndexBufferImpl *This = (IWineD3DIndexBufferImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DIndexBuffer)){
IUnknown_AddRef(iface);
diff --git a/dlls/wined3d/pixelshader.c b/dlls/wined3d/pixelshader.c
index a202942..81b8bd3 100644
--- a/dlls/wined3d/pixelshader.c
+++ b/dlls/wined3d/pixelshader.c
@@ -62,6 +62,7 @@ HRESULT WINAPI IWineD3DPixelShaderImpl_Q
IWineD3DPixelShaderImpl *This = (IWineD3DPixelShaderImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DPixelShader)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/query.c b/dlls/wined3d/query.c
index 6d83a88..0ed22a5 100644
--- a/dlls/wined3d/query.c
+++ b/dlls/wined3d/query.c
@@ -38,6 +38,7 @@ HRESULT WINAPI IWineD3DQueryImpl_QueryIn
IWineD3DQueryImpl *This = (IWineD3DQueryImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DQuery)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/resource.c b/dlls/wined3d/resource.c
index b3bb799..2f10db8 100644
--- a/dlls/wined3d/resource.c
+++ b/dlls/wined3d/resource.c
@@ -33,6 +33,7 @@ HRESULT WINAPI IWineD3DResourceImpl_Quer
IWineD3DResourceImpl *This = (IWineD3DResourceImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/stateblock.c b/dlls/wined3d/stateblock.c
index 1ef2a52..8ab5429 100644
--- a/dlls/wined3d/stateblock.c
+++ b/dlls/wined3d/stateblock.c
@@ -34,6 +34,7 @@ HRESULT WINAPI IWineD3DStateBlockImpl_Qu
IWineD3DStateBlockImpl *This = (IWineD3DStateBlockImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DStateBlock)){
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/surface.c b/dlls/wined3d/surface.c
index 51e6ed9..7d5b217 100644
--- a/dlls/wined3d/surface.c
+++ b/dlls/wined3d/surface.c
@@ -40,6 +40,7 @@ HRESULT WINAPI IWineD3DSurfaceImpl_Query
ERR("Probably FIXME: Calling query interface with NULL riid\n");
}
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DSurface)) {
IUnknown_AddRef((IUnknown*)iface);
diff --git a/dlls/wined3d/swapchain.c b/dlls/wined3d/swapchain.c
index d5bbfc3..72effcd 100644
--- a/dlls/wined3d/swapchain.c
+++ b/dlls/wined3d/swapchain.c
@@ -67,6 +67,7 @@ HRESULT WINAPI IWineD3DSwapChainImpl_Que
IWineD3DSwapChainImpl *This = (IWineD3DSwapChainImpl *)iface;
TRACE("(%p)->(%s,%p)\n", This, debugstr_guid(riid), ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DSwapChain)){
IWineD3DSwapChainImpl_AddRef(iface);
if(ppobj == NULL){
diff --git a/dlls/wined3d/texture.c b/dlls/wined3d/texture.c
index 1bb2257..e9d4600 100644
--- a/dlls/wined3d/texture.c
+++ b/dlls/wined3d/texture.c
@@ -34,6 +34,7 @@ HRESULT WINAPI IWineD3DTextureImpl_Query
IWineD3DTextureImpl *This = (IWineD3DTextureImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DBaseTexture)
|| IsEqualGUID(riid, &IID_IWineD3DTexture)){
diff --git a/dlls/wined3d/vertexbuffer.c b/dlls/wined3d/vertexbuffer.c
index c11fd63..20a3bdb 100644
--- a/dlls/wined3d/vertexbuffer.c
+++ b/dlls/wined3d/vertexbuffer.c
@@ -34,6 +34,7 @@ HRESULT WINAPI IWineD3DVertexBufferImpl_
IWineD3DVertexBufferImpl *This = (IWineD3DVertexBufferImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DVertexBuffer)){
IUnknown_AddRef(iface);
diff --git a/dlls/wined3d/vertexdeclaration.c b/dlls/wined3d/vertexdeclaration.c
index 0f6cf9b..de27935 100644
--- a/dlls/wined3d/vertexdeclaration.c
+++ b/dlls/wined3d/vertexdeclaration.c
@@ -398,6 +398,7 @@ HRESULT WINAPI IWineD3DVertexDeclaration
IWineD3DVertexDeclarationImpl *This = (IWineD3DVertexDeclarationImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DVertexDeclaration)){
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/vertexshader.c b/dlls/wined3d/vertexshader.c
index ed98c9d..32dd70f 100644
--- a/dlls/wined3d/vertexshader.c
+++ b/dlls/wined3d/vertexshader.c
@@ -1980,6 +1980,7 @@ HRESULT WINAPI IWineD3DVertexShaderImpl_
IWineD3DVertexShaderImpl *This = (IWineD3DVertexShaderImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DVertexShader)) {
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/volume.c b/dlls/wined3d/volume.c
index 012a831..745690a 100644
--- a/dlls/wined3d/volume.c
+++ b/dlls/wined3d/volume.c
@@ -34,6 +34,7 @@ HRESULT WINAPI IWineD3DVolumeImpl_QueryI
IWineD3DVolumeImpl *This = (IWineD3DVolumeImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DVolume)){
IUnknown_AddRef(iface);
*ppobj = This;
diff --git a/dlls/wined3d/volumetexture.c b/dlls/wined3d/volumetexture.c
index f8d4567..14e1154 100644
--- a/dlls/wined3d/volumetexture.c
+++ b/dlls/wined3d/volumetexture.c
@@ -34,6 +34,7 @@ HRESULT WINAPI IWineD3DVolumeTextureImpl
IWineD3DVolumeTextureImpl *This = (IWineD3DVolumeTextureImpl *)iface;
TRACE("(%p)->(%s,%p)\n",This,debugstr_guid(riid),ppobj);
if (IsEqualGUID(riid, &IID_IUnknown)
+ || IsEqualGUID(riid, &IID_IWineD3DBase)
|| IsEqualGUID(riid, &IID_IWineD3DResource)
|| IsEqualGUID(riid, &IID_IWineD3DBaseTexture)
|| IsEqualGUID(riid, &IID_IWineD3DVolumeTexture)) {
More information about the wine-patches
mailing list