Christian Costa : d3dx9_36: Forward D3DXCreateTextureFromFileExW to D3DXCreateTextureFromFileInMemoryEx .

Alexandre Julliard julliard at winehq.org
Wed Apr 7 11:56:10 CDT 2010


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

Author: Christian Costa <titan.costa at wanadoo.fr>
Date:   Tue Apr  6 21:44:16 2010 +0200

d3dx9_36: Forward D3DXCreateTextureFromFileExW to D3DXCreateTextureFromFileInMemoryEx.

---

 dlls/d3dx9_36/d3dx9_36.spec |    2 +-
 dlls/d3dx9_36/texture.c     |   37 +++++++++++++++++++++++++++++++++++++
 2 files changed, 38 insertions(+), 1 deletions(-)

diff --git a/dlls/d3dx9_36/d3dx9_36.spec b/dlls/d3dx9_36/d3dx9_36.spec
index 329e501..5c5a1a6 100644
--- a/dlls/d3dx9_36/d3dx9_36.spec
+++ b/dlls/d3dx9_36/d3dx9_36.spec
@@ -95,7 +95,7 @@
 @ stdcall D3DXCreateTexture(ptr long long long long long long ptr)
 @ stub D3DXCreateTextureFromFileA
 @ stub D3DXCreateTextureFromFileExA
-@ stub D3DXCreateTextureFromFileExW
+@ stdcall D3DXCreateTextureFromFileExW(ptr ptr long long long long long long long long long ptr ptr ptr)
 @ stub D3DXCreateTextureFromFileInMemory
 @ stdcall D3DXCreateTextureFromFileInMemoryEx(ptr ptr long long long long long long long long long long ptr ptr ptr)
 @ stub D3DXCreateTextureFromFileW
diff --git a/dlls/d3dx9_36/texture.c b/dlls/d3dx9_36/texture.c
index 7447d81..2b1b468 100644
--- a/dlls/d3dx9_36/texture.c
+++ b/dlls/d3dx9_36/texture.c
@@ -70,3 +70,40 @@ HRESULT WINAPI D3DXCreateTextureFromFileInMemoryEx(LPDIRECT3DDEVICE9 device,
 
     return E_NOTIMPL;
 }
+
+HRESULT WINAPI D3DXCreateTextureFromFileExW(LPDIRECT3DDEVICE9 device,
+                                            LPCWSTR srcfile,
+                                            UINT width,
+                                            UINT height,
+                                            UINT miplevels,
+                                            DWORD usage,
+                                            D3DFORMAT format,
+                                            D3DPOOL pool,
+                                            DWORD filter,
+                                            DWORD mipfilter,
+                                            D3DCOLOR colorkey,
+                                            D3DXIMAGE_INFO *srcinfo,
+                                            PALETTEENTRY *palette,
+                                            LPDIRECT3DTEXTURE9 *texture)
+{
+    HRESULT hr;
+    DWORD size;
+    LPVOID buffer;
+
+    TRACE("(%p, %p, %u, %u, %u, %x, %x, %x, %u, %u, %x, %p, %p, %p): relay\n", device, debugstr_w(srcfile), width,
+        height, miplevels, usage, format, pool, filter, mipfilter, colorkey, srcinfo, palette, texture);
+
+    if (!srcfile)
+        return D3DERR_INVALIDCALL;
+
+    hr = map_view_of_file(srcfile, &buffer, &size);
+    if (FAILED(hr))
+        return D3DXERR_INVALIDDATA;
+
+    hr = D3DXCreateTextureFromFileInMemoryEx(device, buffer, size, width, height, miplevels, usage, format, pool,
+        filter, mipfilter, colorkey, srcinfo, palette, texture);
+
+    UnmapViewOfFile(buffer);
+
+    return hr;
+}




More information about the wine-cvs mailing list