Module: wine Branch: master Commit: 4b56eae0f1253c2db1d168a6126b4264897897d7 URL: http://source.winehq.org/git/wine.git/?a=commit;h=4b56eae0f1253c2db1d168a612...
Author: Henri Verbeet hverbeet@codeweavers.com Date: Thu Aug 29 10:26:26 2013 +0200
d3dx9: Simplify D3DXCreateTextureFromResourceExA().
---
dlls/d3dx9_36/texture.c | 35 ++++++++++++++--------------------- 1 files changed, 14 insertions(+), 21 deletions(-)
diff --git a/dlls/d3dx9_36/texture.c b/dlls/d3dx9_36/texture.c index 9e45506..d32d834 100644 --- a/dlls/d3dx9_36/texture.c +++ b/dlls/d3dx9_36/texture.c @@ -785,34 +785,27 @@ HRESULT WINAPI D3DXCreateTextureFromResourceExA(struct IDirect3DDevice9 *device, PALETTEENTRY *palette, struct IDirect3DTexture9 **texture) { HRSRC resinfo; + void *buffer; + DWORD size;
- TRACE("(%p, %s): relay\n", srcmodule, debugstr_a(resource)); + TRACE("device %p, srcmodule %p, resource %s, width %u, height %u, miplevels %u, usage %#x, format %#x, " + "pool %#x, filter %#x, mipfilter %#x, colorkey 0x%08x, srcinfo %p, palette %p, texture %p.\n", + device, srcmodule, debugstr_a(resource), width, height, miplevels, usage, format, + pool, filter, mipfilter, colorkey, srcinfo, palette, texture);
if (!device || !texture) return D3DERR_INVALIDCALL;
- resinfo = FindResourceA(srcmodule, resource, (const char *)RT_RCDATA); - if (!resinfo) /* Try loading the resource as bitmap data (which is in DIB format D3DXIFF_DIB) */ - resinfo = FindResourceA(srcmodule, resource, (const char *)RT_BITMAP); - - if (resinfo) - { - LPVOID buffer; - HRESULT hr; - DWORD size; - - hr = load_resource_into_memory(srcmodule, resinfo, &buffer, &size); - - if (FAILED(hr)) - return D3DXERR_INVALIDDATA; + if (!(resinfo = FindResourceA(srcmodule, resource, (const char *)RT_RCDATA)) + /* Try loading the resource as bitmap data (which is in DIB format D3DXIFF_DIB) */ + && !(resinfo = FindResourceA(srcmodule, resource, (const char *)RT_BITMAP))) + return D3DXERR_INVALIDDATA;
- return D3DXCreateTextureFromFileInMemoryEx(device, buffer, size, width, - height, miplevels, usage, format, - pool, filter, mipfilter, colorkey, - srcinfo, palette, texture); - } + if (FAILED(load_resource_into_memory(srcmodule, resinfo, &buffer, &size))) + return D3DXERR_INVALIDDATA;
- return D3DXERR_INVALIDDATA; + return D3DXCreateTextureFromFileInMemoryEx(device, buffer, size, width, height, miplevels, + usage, format, pool, filter, mipfilter, colorkey, srcinfo, palette, texture); }
HRESULT WINAPI D3DXCreateTextureFromResourceExW(struct IDirect3DDevice9 *device, HMODULE srcmodule,