mirror of
https://github.com/reactos/reactos.git
synced 2024-12-27 09:34:43 +00:00
fill in the DDSD we got from the call of createsurface it is not complete
svn path=/trunk/; revision=18919
This commit is contained in:
parent
cb2e289656
commit
eb40205bb8
1 changed files with 23 additions and 2 deletions
|
@ -18,8 +18,6 @@ HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE7 iface, LPDIREC
|
||||||
if(sizeof(DDSURFACEDESC2) != pDDSD2->dwSize)
|
if(sizeof(DDSURFACEDESC2) != pDDSD2->dwSize)
|
||||||
return DDERR_UNSUPPORTED;
|
return DDERR_UNSUPPORTED;
|
||||||
|
|
||||||
if(!(pDDSD2->dwFlags & DDSD_CAPS))
|
|
||||||
return DDERR_INVALIDPARAMS;
|
|
||||||
|
|
||||||
This->owner = (IDirectDrawImpl*)pDD;
|
This->owner = (IDirectDrawImpl*)pDD;
|
||||||
|
|
||||||
|
@ -30,6 +28,29 @@ HRESULT WINAPI Main_DDrawSurface_Initialize (LPDIRECTDRAWSURFACE7 iface, LPDIREC
|
||||||
|
|
||||||
/* FIXME Fill the rest from ddsd2 to ddsd */
|
/* FIXME Fill the rest from ddsd2 to ddsd */
|
||||||
|
|
||||||
|
RtlCopyMemory(&ddsd.ddckCKDestBlt,&pDDSD2->ddckCKDestBlt,sizeof(ddsd.ddckCKDestBlt));
|
||||||
|
RtlCopyMemory(&ddsd.ddckCKDestOverlay,&pDDSD2->ddckCKDestOverlay,sizeof(ddsd.ddckCKDestOverlay));
|
||||||
|
RtlCopyMemory(&ddsd.ddckCKSrcBlt,&pDDSD2->ddckCKSrcBlt,sizeof(ddsd.ddckCKSrcBlt));
|
||||||
|
RtlCopyMemory(&ddsd.ddckCKSrcOverlay,&pDDSD2->ddckCKSrcOverlay,sizeof(ddsd.ddckCKSrcOverlay));
|
||||||
|
RtlCopyMemory(&ddsd.ddpfPixelFormat,&pDDSD2->ddpfPixelFormat,sizeof(ddsd.ddpfPixelFormat));
|
||||||
|
RtlCopyMemory(&ddsd.ddsCaps,&pDDSD2->ddsCaps,sizeof(ddsd.ddsCaps));
|
||||||
|
|
||||||
|
ddsd.dwAlphaBitDepth = pDDSD2->dwAlphaBitDepth;
|
||||||
|
ddsd.dwBackBufferCount = pDDSD2->dwBackBufferCount;
|
||||||
|
ddsd.dwFlags = pDDSD2->dwFlags;
|
||||||
|
ddsd.dwHeight = pDDSD2->dwHeight;
|
||||||
|
/* FIXME ddsd.dwLinearSize = pDDSD2->dwLinearSize; Problem with our header for dx */
|
||||||
|
ddsd.dwMipMapCount = pDDSD2->dwMipMapCount;
|
||||||
|
ddsd.dwRefreshRate = pDDSD2->dwRefreshRate;
|
||||||
|
ddsd.dwReserved = pDDSD2->dwReserved;
|
||||||
|
ddsd.dwWidth = pDDSD2->dwWidth;
|
||||||
|
/* FIXME ddsd.dwZBufferBitDepth where in pDDSD2 */
|
||||||
|
/* FIXME ddsd.lPitch = pDDSD2->lPitch; Problem with our header for dx */
|
||||||
|
ddsd.lpSurface = pDDSD2->lpSurface;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
/************ Test see if we can Create Surface ***********************/
|
/************ Test see if we can Create Surface ***********************/
|
||||||
if (This->owner->DirectDrawGlobal.lpDDCBtmp->HALDD.dwFlags & DDHAL_CB32_CANCREATESURFACE)
|
if (This->owner->DirectDrawGlobal.lpDDCBtmp->HALDD.dwFlags & DDHAL_CB32_CANCREATESURFACE)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue