ChangeSet ID: 21244 CVSROOT: /opt/cvs-commit Module name: wine Changes by: julliard@winehq.org 2005/11/14 05:22:20
Modified files: dlls/ddraw : surface_dib.c ddraw_utils.c
Log message: Christian Costa titan.costa@wanadoo.fr Add DDBLT_DONOTWAIT flag. Separate DDBLT_WAIT and DDBLT_ASYNC fixme in Blt method.
Patch: http://cvs.winehq.org/patch.py?id=21244
Old revision New revision Changes Path 1.7 1.8 +19 -7 wine/dlls/ddraw/surface_dib.c 1.3 1.4 +2 -1 wine/dlls/ddraw/ddraw_utils.c
Index: wine/dlls/ddraw/surface_dib.c diff -u -p wine/dlls/ddraw/surface_dib.c:1.7 wine/dlls/ddraw/surface_dib.c:1.8 --- wine/dlls/ddraw/surface_dib.c:1.7 14 Nov 2005 11:22:20 -0000 +++ wine/dlls/ddraw/surface_dib.c 14 Nov 2005 11:22:20 -0000 @@ -669,15 +669,27 @@ DIB_DirectDrawSurface_Blt(LPDIRECTDRAWSU
dbuf = (BYTE*)ddesc.lpSurface+(xdst.top*ddesc.u1.lPitch)+(xdst.left*bpp);
- if (dwFlags & (DDBLT_WAIT|DDBLT_ASYNC)) - { + if (dwFlags & DDBLT_WAIT) { static BOOL displayed = FALSE; if (!displayed) - { - FIXME("dwFlags DDBLT_WAIT and/or DDBLT_ASYNC: can't handle right now.\n"); - displayed = TRUE; - } - dwFlags &= ~(DDBLT_WAIT|DDBLT_ASYNC); + FIXME("Can't handle DDBLT_WAIT flag right now.\n"); + displayed = TRUE; + dwFlags &= ~DDBLT_WAIT; + } + if (dwFlags & DDBLT_ASYNC) { + static BOOL displayed = FALSE; + if (!displayed) + FIXME("Can't handle DDBLT_ASYNC flag right now.\n"); + displayed = TRUE; + dwFlags &= ~DDBLT_ASYNC; + } + if (dwFlags & DDBLT_DONOTWAIT) { + /* DDBLT_DONOTWAIT appeared in DX7 */ + static BOOL displayed = FALSE; + if (!displayed) + FIXME("Can't handle DDBLT_DONOTWAIT flag right now.\n"); + displayed = TRUE; + dwFlags &= ~DDBLT_DONOTWAIT; }
/* First, all the 'source-less' blits */ Index: wine/dlls/ddraw/ddraw_utils.c diff -u -p wine/dlls/ddraw/ddraw_utils.c:1.3 wine/dlls/ddraw/ddraw_utils.c:1.4 --- wine/dlls/ddraw/ddraw_utils.c:1.3 14 Nov 2005 11:22:20 -0000 +++ wine/dlls/ddraw/ddraw_utils.c 14 Nov 2005 11:22:20 -0000 @@ -405,7 +405,8 @@ void DDRAW_dump_DDBLT(DWORD flagmask) FE(DDBLT_ZBUFFERSRCCONSTOVERRIDE), FE(DDBLT_ZBUFFERSRCOVERRIDE), FE(DDBLT_WAIT), - FE(DDBLT_DEPTHFILL) + FE(DDBLT_DEPTHFILL), + FE(DDBLT_DONOTWAIT) };
DDRAW_dump_flags(flagmask, flags, sizeof(flags)/sizeof(flags[0]));