Module: wine Branch: master Commit: 3d6ffee02121331b366494aa46536f62c7cda677 URL: http://source.winehq.org/git/wine.git/?a=commit;h=3d6ffee02121331b366494aa46...
Author: Jan Zerebecki jan.wine@zerebecki.de Date: Thu Nov 23 19:57:54 2006 +0100
wined3d: Rearrange code in CheckDeviceType.
---
dlls/wined3d/directx.c | 41 +++++++++++++++++++++-------------------- 1 files changed, 21 insertions(+), 20 deletions(-)
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c index 0413520..1184e64 100644 --- a/dlls/wined3d/directx.c +++ b/dlls/wined3d/directx.c @@ -1568,6 +1568,12 @@ static HRESULT WINAPI IWineD3DImpl_Check WINED3DFORMAT DisplayFormat, WINED3DFORMAT BackBufferFormat, BOOL Windowed) {
IWineD3DImpl *This = (IWineD3DImpl *)iface; + GLXFBConfig* cfgs = NULL; + int nCfgs = 0; + int it; + HRESULT hr = WINED3DERR_NOTAVAILABLE; + WineD3D_Context* ctx; + TRACE_(d3d_caps)("(%p)-> (STUB) (Adptr:%d, CheckType:(%x,%s), DispFmt:(%x,%s), BackBuf:(%x,%s), Win?%d): stub\n", This, Adapter, @@ -1581,29 +1587,24 @@ static HRESULT WINAPI IWineD3DImpl_Check return WINED3DERR_INVALIDCALL; }
- { - GLXFBConfig* cfgs = NULL; - int nCfgs = 0; - int it; - HRESULT hr = WINED3DERR_NOTAVAILABLE; - - WineD3D_Context* ctx = WineD3D_CreateFakeGLContext(); - if (NULL != ctx) { - cfgs = glXGetFBConfigs(ctx->display, DefaultScreen(ctx->display), &nCfgs); - for (it = 0; it < nCfgs; ++it) { - if (IWineD3DImpl_IsGLXFBConfigCompatibleWithRenderFmt(ctx->display, cfgs[it], DisplayFormat)) { - hr = WINED3D_OK; - break ; - } - } - XFree(cfgs); - - WineD3D_ReleaseFakeGLContext(ctx); - return hr; + ctx = WineD3D_CreateFakeGLContext(); + if (NULL != ctx) { + cfgs = glXGetFBConfigs(ctx->display, DefaultScreen(ctx->display), &nCfgs); + for (it = 0; it < nCfgs; ++it) { + if (IWineD3DImpl_IsGLXFBConfigCompatibleWithRenderFmt(ctx->display, cfgs[it], DisplayFormat)) { + hr = WINED3D_OK; + TRACE_(d3d_caps)("OK\n"); + break ; + } } + XFree(cfgs); + WineD3D_ReleaseFakeGLContext(ctx); }
- return WINED3DERR_NOTAVAILABLE; + if(hr != WINED3D_OK) + TRACE_(d3d_caps)("returning something different from WINED3D_OK\n"); + + return hr; }
static HRESULT WINAPI IWineD3DImpl_CheckDeviceFormat(IWineD3D *iface, UINT Adapter, WINED3DDEVTYPE DeviceType,