wined3d: Store an IWineD3DResourceImpl pointer in struct wined3d_rendertarget_view.
authorHenri Verbeet <hverbeet@codeweavers.com>
Mon, 17 Jan 2011 17:49:30 +0000 (18:49 +0100)
committerAlexandre Julliard <julliard@winehq.org>
Tue, 18 Jan 2011 11:32:06 +0000 (12:32 +0100)
dlls/wined3d/view.c
dlls/wined3d/wined3d_private.h

index 28dc401f9b62926cf75040c204045d19ad1ed004..2b98de32afdd2472a17966662ffd3d0c0f8d41e0 100644 (file)
@@ -65,7 +65,7 @@ static ULONG STDMETHODCALLTYPE rendertarget_view_Release(IWineD3DRendertargetVie
 
     if (!refcount)
     {
-        IWineD3DResource_Release(This->resource);
+        IWineD3DResource_Release((IWineD3DResource *)This->resource);
         HeapFree(GetProcessHeap(), 0, This);
     }
 
@@ -88,8 +88,8 @@ static HRESULT STDMETHODCALLTYPE rendertarget_view_GetResource(IWineD3DRendertar
 {
     struct wined3d_rendertarget_view *This = (struct wined3d_rendertarget_view *)iface;
 
-    IWineD3DResource_AddRef(This->resource);
-    *resource = This->resource;
+    IWineD3DResource_AddRef((IWineD3DResource *)This->resource);
+    *resource = (IWineD3DResource *)This->resource;
 
     return WINED3D_OK;
 }
@@ -112,6 +112,6 @@ void wined3d_rendertarget_view_init(struct wined3d_rendertarget_view *view,
     view->vtbl = &wined3d_rendertarget_view_vtbl;
     view->refcount = 1;
     IWineD3DResource_AddRef((IWineD3DResource *)resource);
-    view->resource = (IWineD3DResource *)resource;
+    view->resource = resource;
     view->parent = parent;
 }
index e53d1a11d62624fe65345b618ea2939a2dd85e36..65db699a3bb0162f9a881713a7f9581076582b97 100644 (file)
@@ -2569,7 +2569,7 @@ struct wined3d_rendertarget_view
     const struct IWineD3DRendertargetViewVtbl *vtbl;
     LONG refcount;
 
-    IWineD3DResource *resource;
+    struct IWineD3DResourceImpl *resource;
     void *parent;
 };