mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-09-02 04:13:34 +00:00
start implement of DirectDraw_GetCaps
svn path=/trunk/; revision=27211
This commit is contained in:
@@ -131,7 +131,7 @@ Main_DirectDraw_QueryInterface (LPDIRECTDRAW7 iface,
|
||||
}
|
||||
else
|
||||
{
|
||||
/* DirectDraw4 Vtable */
|
||||
/* DirectDraw Vtable */
|
||||
newThis->lpVtbl = &DirectDraw_Vtable;
|
||||
newThis->lpLcl = This->lpLcl;
|
||||
newThis->lpLink = This;
|
||||
@@ -451,6 +451,74 @@ Main_DirectDraw_GetFourCCCodes(LPDIRECTDRAW7 iface, LPDWORD lpNumCodes, LPDWORD
|
||||
return retVal;
|
||||
}
|
||||
|
||||
HRESULT WINAPI
|
||||
Main_DirectDraw_GetCaps( LPDIRECTDRAW7 iface, LPDDCAPS pDriverCaps,
|
||||
LPDDCAPS pHELCaps)
|
||||
{
|
||||
HRESULT retVal = DD_OK;
|
||||
|
||||
DX_WINDBG_trace();
|
||||
if (!(IsBadWritePtr(pDriverCaps,sizeof(LPDDCAPS))))
|
||||
{
|
||||
if (!(IsBadWritePtr(pHELCaps,sizeof(LPDDCAPS))))
|
||||
{
|
||||
return DDERR_INVALIDPARAMS;
|
||||
}
|
||||
}
|
||||
|
||||
if ((IsBadWritePtr(pDriverCaps,sizeof(LPDDCAPS))))
|
||||
{
|
||||
/* Setup hardware caps */
|
||||
switch (pDriverCaps->dwSize)
|
||||
{
|
||||
case sizeof(DDCAPS_DX1):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
case sizeof(DDCAPS_DX3):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
case sizeof(DDCAPS_DX5):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
|
||||
/* DDCAPS_DX6 is same as DDCAPS_DX7 */
|
||||
case sizeof(DDCAPS_DX7):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
default:
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
if ((IsBadWritePtr(pHELCaps,sizeof(LPDDCAPS))))
|
||||
{
|
||||
/* Setup hardware caps */
|
||||
switch (pHELCaps->dwSize)
|
||||
{
|
||||
case sizeof(DDCAPS_DX1):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
case sizeof(DDCAPS_DX3):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
case sizeof(DDCAPS_DX5):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
|
||||
/* DDCAPS_DX6 is same as DDCAPS_DX7 */
|
||||
case sizeof(DDCAPS_DX7):
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
default:
|
||||
retVal = DDERR_INVALIDPARAMS;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
/*
|
||||
|
||||
@@ -57,13 +57,6 @@ Main_DirectDraw_FlipToGDISurface(LPDIRECTDRAW7 iface)
|
||||
DX_STUB;
|
||||
}
|
||||
|
||||
HRESULT WINAPI
|
||||
Main_DirectDraw_GetCaps(LPDIRECTDRAW7 iface, LPDDCAPS pDriverCaps,
|
||||
LPDDCAPS pHELCaps)
|
||||
{
|
||||
DX_WINDBG_trace();
|
||||
DX_STUB;
|
||||
}
|
||||
|
||||
HRESULT WINAPI
|
||||
Main_DirectDraw_GetGDISurface(LPDIRECTDRAW7 iface,
|
||||
|
||||
Reference in New Issue
Block a user