Fixed HALDD been setup right.

svn path=/trunk/; revision=25039
This commit is contained in:
Magnus Olsen 2006-12-03 18:53:05 +00:00
parent 076a9dd89e
commit 1de675a898

View file

@ -668,8 +668,7 @@ StartDirectDrawHal(LPDIRECTDRAW* iface)
LPDDRAWI_DIRECTDRAW_INT This = (LPDDRAWI_DIRECTDRAW_INT)iface; LPDDRAWI_DIRECTDRAW_INT This = (LPDDRAWI_DIRECTDRAW_INT)iface;
DDHAL_GETDRIVERINFODATA DriverInfo; DDHAL_GETDRIVERINFODATA DriverInfo;
DDHALINFO mHALInfo; DDHALINFO mHALInfo;
DDHAL_CALLBACKS mCallbacks;
DDHAL_DDEXEBUFCALLBACKS mD3dBufferCallbacks; DDHAL_DDEXEBUFCALLBACKS mD3dBufferCallbacks;
D3DHAL_CALLBACKS mD3dCallbacks; D3DHAL_CALLBACKS mD3dCallbacks;
D3DHAL_GLOBALDRIVERDATA mD3dDriverData; D3DHAL_GLOBALDRIVERDATA mD3dDriverData;
@ -684,9 +683,13 @@ StartDirectDrawHal(LPDIRECTDRAW* iface)
/* HAL Startup process */ /* HAL Startup process */
BOOL newmode = FALSE; BOOL newmode = FALSE;
RtlZeroMemory(&mHALInfo, sizeof(DDHALINFO)); RtlZeroMemory(&mHALInfo, sizeof(DDHALINFO));
RtlZeroMemory(&mCallbacks, sizeof(DDHAL_CALLBACKS));
ddgbl.lpDDCBtmp = DxHeapMemAlloc(sizeof(DDHAL_CALLBACKS));
if ( ddgbl.lpDDCBtmp == NULL)
{
return DD_FALSE;
}
/* /*
Startup DX HAL step one of three Startup DX HAL step one of three
@ -715,9 +718,9 @@ StartDirectDrawHal(LPDIRECTDRAW* iface)
if (!DdQueryDirectDrawObject(This->lpLcl->lpGbl, if (!DdQueryDirectDrawObject(This->lpLcl->lpGbl,
&mHALInfo, &mHALInfo,
&mCallbacks.HALDD, &ddgbl.lpDDCBtmp->HALDD,
&mCallbacks.HALDDSurface, &ddgbl.lpDDCBtmp->HALDDSurface,
&mCallbacks.HALDDPalette, &ddgbl.lpDDCBtmp->HALDDPalette,
&mD3dCallbacks, &mD3dCallbacks,
&mD3dDriverData, &mD3dDriverData,
&mD3dBufferCallbacks, &mD3dBufferCallbacks,
@ -771,12 +774,12 @@ StartDirectDrawHal(LPDIRECTDRAW* iface)
if (!DdQueryDirectDrawObject( if (!DdQueryDirectDrawObject(
This->lpLcl->lpGbl, This->lpLcl->lpGbl,
&mHALInfo, &mHALInfo,
&mCallbacks.HALDD, &ddgbl.lpDDCBtmp->HALDD,
&mCallbacks.HALDDSurface, &ddgbl.lpDDCBtmp->HALDDSurface,
&mCallbacks.HALDDPalette, &ddgbl.lpDDCBtmp->HALDDPalette,
&mD3dCallbacks, &mD3dCallbacks,
&mD3dDriverData, &mD3dDriverData,
&mCallbacks.HALDDExeBuf, &ddgbl.lpDDCBtmp->HALDDExeBuf,
(DDSURFACEDESC*)mpTextures, (DDSURFACEDESC*)mpTextures,
mpFourCC, mpFourCC,
mpvmList)) mpvmList))
@ -791,6 +794,7 @@ StartDirectDrawHal(LPDIRECTDRAW* iface)
return DD_FALSE; return DD_FALSE;
} }
/* /*
Copy over from HalInfo to DirectDrawGlobal Copy over from HalInfo to DirectDrawGlobal
*/ */