[PATCH 4/5] d3dx9: Simplify D3DXCreateEffectFromResourceExA().

Henri Verbeet hverbeet at codeweavers.com
Fri Aug 23 03:18:17 CDT 2013


---
 dlls/d3dx9_36/effect.c | 28 ++++++++++++----------------
 1 file changed, 12 insertions(+), 16 deletions(-)

diff --git a/dlls/d3dx9_36/effect.c b/dlls/d3dx9_36/effect.c
index 757833b..c4d97a4 100644
--- a/dlls/d3dx9_36/effect.c
+++ b/dlls/d3dx9_36/effect.c
@@ -5601,29 +5601,25 @@ HRESULT WINAPI D3DXCreateEffectFromResourceExA(struct IDirect3DDevice9 *device,
         DWORD flags, struct ID3DXEffectPool *pool, struct ID3DXEffect **effect, struct ID3DXBuffer **compilationerrors)
 {
     HRSRC resinfo;
+    void *buffer;
+    DWORD size;
 
-    TRACE("(%p, %s): relay\n", srcmodule, debugstr_a(srcresource));
+    TRACE("device %p, srcmodule %p, srcresource %s, defines %p, include %p, skipconstants %s, "
+            "flags %#x, pool %p, effect %p, compilationerrors %p.\n",
+            device, srcmodule, debugstr_a(srcresource), defines, include, debugstr_a(skipconstants),
+            flags, pool, effect, compilationerrors);
 
     if (!device)
         return D3DERR_INVALIDCALL;
 
-    resinfo = FindResourceA(srcmodule, srcresource, (LPCSTR) RT_RCDATA);
-
-    if (resinfo)
-    {
-        LPVOID buffer;
-        HRESULT ret;
-        DWORD size;
-
-        ret = load_resource_into_memory(srcmodule, resinfo, &buffer, &size);
-
-        if (FAILED(ret))
-            return D3DXERR_INVALIDDATA;
+    if (!(resinfo = FindResourceA(srcmodule, srcresource, (const char *)RT_RCDATA)))
+        return D3DXERR_INVALIDDATA;
 
-        return D3DXCreateEffectEx(device, buffer, size, defines, include, skipconstants, flags, pool, effect, compilationerrors);
-    }
+    if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size)))
+        return D3DXERR_INVALIDDATA;
 
-    return D3DXERR_INVALIDDATA;
+    return D3DXCreateEffectEx(device, buffer, size, defines, include,
+            skipconstants, flags, pool, effect, compilationerrors);
 }
 
 HRESULT WINAPI D3DXCreateEffectFromResourceW(struct IDirect3DDevice9 *device, HMODULE srcmodule,
-- 
1.8.1.5




More information about the wine-patches mailing list