=?UTF-8?Q?Andr=C3=A9=20Hentschel=20?=: d3drm: Implement IDirect3DRMX_CreateMesh.

Alexandre Julliard julliard at winehq.org
Mon Jun 18 15:00:24 CDT 2012


Module: wine
Branch: master
Commit: ac5b932363ecc954dcfb49c24a027ac14f47e88b
URL:    http://source.winehq.org/git/wine.git/?a=commit;h=ac5b932363ecc954dcfb49c24a027ac14f47e88b

Author: André Hentschel <nerv at dawncrow.de>
Date:   Sun Jun 17 15:35:18 2012 +0200

d3drm: Implement IDirect3DRMX_CreateMesh.

---

 dlls/d3drm/d3drm.c         |   12 ++++++------
 dlls/d3drm/d3drm_private.h |    1 +
 dlls/d3drm/meshbuilder.c   |    4 +---
 3 files changed, 8 insertions(+), 9 deletions(-)

diff --git a/dlls/d3drm/d3drm.c b/dlls/d3drm/d3drm.c
index 923a05c..3c1c20d 100644
--- a/dlls/d3drm/d3drm.c
+++ b/dlls/d3drm/d3drm.c
@@ -150,9 +150,9 @@ static HRESULT WINAPI IDirect3DRMImpl_CreateMesh(IDirect3DRM* iface, LPDIRECT3DR
 {
     IDirect3DRMImpl *This = impl_from_IDirect3DRM(iface);
 
-    FIXME("(%p/%p)->(%p): stub\n", iface, This, ppMesh);
+    TRACE("(%p/%p)->(%p)\n", iface, This, ppMesh);
 
-    return E_NOTIMPL;
+    return IDirect3DRM3_CreateMesh(&This->IDirect3DRM3_iface, ppMesh);
 }
 
 static HRESULT WINAPI IDirect3DRMImpl_CreateMeshBuilder(IDirect3DRM* iface, LPDIRECT3DRMMESHBUILDER * ppMeshBuilder)
@@ -518,9 +518,9 @@ static HRESULT WINAPI IDirect3DRM2Impl_CreateMesh(IDirect3DRM2* iface, LPDIRECT3
 {
     IDirect3DRMImpl *This = impl_from_IDirect3DRM2(iface);
 
-    FIXME("(%p/%p)->(%p): stub\n", iface, This, ppMesh);
+    TRACE("(%p/%p)->(%p)\n", iface, This, ppMesh);
 
-    return E_NOTIMPL;
+    return IDirect3DRM3_CreateMesh(&This->IDirect3DRM3_iface, ppMesh);
 }
 
 static HRESULT WINAPI IDirect3DRM2Impl_CreateMeshBuilder(IDirect3DRM2* iface,
@@ -943,9 +943,9 @@ static HRESULT WINAPI IDirect3DRM3Impl_CreateMesh(IDirect3DRM3* iface, LPDIRECT3
 {
     IDirect3DRMImpl *This = impl_from_IDirect3DRM3(iface);
 
-    FIXME("(%p/%p)->(%p): stub\n", iface, This, Mesh);
+    TRACE("(%p/%p)->(%p)\n", iface, This, Mesh);
 
-    return E_NOTIMPL;
+    return Direct3DRMMesh_create(Mesh);
 }
 
 static HRESULT WINAPI IDirect3DRM3Impl_CreateMeshBuilder(IDirect3DRM3* iface,
diff --git a/dlls/d3drm/d3drm_private.h b/dlls/d3drm/d3drm_private.h
index 939304c..95eca5f 100644
--- a/dlls/d3drm/d3drm_private.h
+++ b/dlls/d3drm/d3drm_private.h
@@ -30,6 +30,7 @@ HRESULT Direct3DRM_create(IUnknown** ppObj) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMDevice_create(REFIID riid, IUnknown** ppObj) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMFrame_create(REFIID riid, IUnknown* parent_frame, IUnknown** ret_iface) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMLight_create(IUnknown** ppObj) DECLSPEC_HIDDEN;
+HRESULT Direct3DRMMesh_create(IDirect3DRMMesh** obj) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMMeshBuilder_create(REFIID riid, IUnknown** ppObj) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMViewport_create(REFIID riid, IUnknown** ppObj) DECLSPEC_HIDDEN;
 HRESULT Direct3DRMMaterial_create(IDirect3DRMMaterial2** ret_iface) DECLSPEC_HIDDEN;
diff --git a/dlls/d3drm/meshbuilder.c b/dlls/d3drm/meshbuilder.c
index a05c597..589ebc7 100644
--- a/dlls/d3drm/meshbuilder.c
+++ b/dlls/d3drm/meshbuilder.c
@@ -34,8 +34,6 @@
 
 WINE_DEFAULT_DEBUG_CHANNEL(d3drm);
 
-static HRESULT Direct3DRMMesh_create(IDirect3DRMMesh** obj);
-
 typedef struct {
     unsigned nb_vertices;
     D3DRMVERTEX* vertices;
@@ -2983,7 +2981,7 @@ static const struct IDirect3DRMMeshVtbl Direct3DRMMesh_Vtbl =
     IDirect3DRMMeshImpl_GetGroupTexture
 };
 
-static HRESULT Direct3DRMMesh_create(IDirect3DRMMesh** obj)
+HRESULT Direct3DRMMesh_create(IDirect3DRMMesh** obj)
 {
     IDirect3DRMMeshImpl* object;
 




More information about the wine-cvs mailing list