[PATCH] WineD3D: Only set D3D caps when GL was loaded =
Stefan Doesinger
stefan at codeweavers.com
Wed Jul 23 15:38:52 CDT 2008
successfully=0A=
=0A=
---=0A=
dlls/wined3d/directx.c | 19 ++++++++++++-------=0A=
1 files changed, 12 insertions(+), 7 deletions(-)=0A=
=0A=
diff --git a/dlls/wined3d/directx.c b/dlls/wined3d/directx.c=0A=
index 4b5a8c0..ddb7102 100644=0A=
--- a/dlls/wined3d/directx.c=0A=
+++ b/dlls/wined3d/directx.c=0A=
@@ -3457,8 +3457,7 @@ static HRESULT WINAPI =
IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter,=0A=
/* Fill the ddraw caps structure */=0A=
pCaps->DirectDrawCaps.Caps =3D WINEDDCAPS_GDI =
|=0A=
WINEDDCAPS_PALETTE =
|=0A=
- blit_caps =
|=0A=
- WINEDDCAPS_3D; /* TODO: Make =
conditional */=0A=
+ blit_caps;=0A=
pCaps->DirectDrawCaps.Caps2 =3D WINEDDCAPS2_CERTIFIED =
|=0A=
WINEDDCAPS2_NOPAGELOCKREQUIRED =
|=0A=
WINEDDCAPS2_PRIMARYGAMMA =
|=0A=
@@ -3483,12 +3482,18 @@ static HRESULT WINAPI =
IWineD3DImpl_GetDeviceCaps(IWineD3D *iface, UINT Adapter,=0A=
WINEDDSCAPS_PRIMARYSURFACE =
|=0A=
WINEDDSCAPS_SYSTEMMEMORY =
|=0A=
WINEDDSCAPS_VIDEOMEMORY =
|=0A=
- WINEDDSCAPS_VISIBLE =
|=0A=
- WINEDDSCAPS_3DDEVICE =
| /* TODO: Make conditional */=0A=
- WINEDDSCAPS_MIPMAP =
| /* TODO: Make conditional */=0A=
- WINEDDSCAPS_TEXTURE =
| /* TODO: Make conditional */=0A=
- WINEDDSCAPS_ZBUFFER; =
/* TODO: Make conditional */=0A=
+ WINEDDSCAPS_VISIBLE;=0A=
pCaps->DirectDrawCaps.StrideAlign =3D 0; /* TODO: SURFACE_ALIGNMENT =
*/=0A=
+=0A=
+ /* Set D3D caps if OpenGL is available. */=0A=
+ if(Adapters[Adapter].opengl) {=0A=
+ pCaps->DirectDrawCaps.ddsCaps |=3DWINEDDSCAPS_3DDEVICE =
|=0A=
+ WINEDDSCAPS_MIPMAP =
|=0A=
+ WINEDDSCAPS_TEXTURE =
|=0A=
+ WINEDDSCAPS_ZBUFFER;=0A=
+ pCaps->DirectDrawCaps.Caps |=3D WINEDDCAPS_3D;=0A=
+ }=0A=
+=0A=
return WINED3D_OK;=0A=
}=0A=
=0A=
-- =0A=
1.5.4.5=0A=
=0A=
------=_NextPart_000_001B_01C8F509.22E67AE0--
More information about the wine-patches
mailing list