mirror of
https://github.com/reactos/reactos.git
synced 2024-10-15 13:45:58 +00:00
commit GetDeviceIdentifier and GetDeviceIdentifier7 both are under devloping, I hope I finish this implement today
svn path=/trunk/; revision=27084
This commit is contained in:
parent
8ef4afc835
commit
535019cbf6
|
@ -6,7 +6,8 @@ HRESULT WINAPI Main_DirectDraw_Compact(LPDIRECTDRAW7 );
|
||||||
HRESULT WINAPI Main_DirectDraw_CreateClipper(LPDIRECTDRAW7, DWORD, LPDIRECTDRAWCLIPPER *, IUnknown *);
|
HRESULT WINAPI Main_DirectDraw_CreateClipper(LPDIRECTDRAW7, DWORD, LPDIRECTDRAWCLIPPER *, IUnknown *);
|
||||||
HRESULT WINAPI Main_DirectDraw_CreatePalette(LPDIRECTDRAW7, DWORD, LPPALETTEENTRY, LPDIRECTDRAWPALETTE*, LPUNKNOWN);
|
HRESULT WINAPI Main_DirectDraw_CreatePalette(LPDIRECTDRAW7, DWORD, LPPALETTEENTRY, LPDIRECTDRAWPALETTE*, LPUNKNOWN);
|
||||||
HRESULT WINAPI Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7, LPDIRECTDRAWSURFACE7, LPDIRECTDRAWSURFACE7*);
|
HRESULT WINAPI Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7, LPDIRECTDRAWSURFACE7, LPDIRECTDRAWSURFACE7*);
|
||||||
HRESULT WINAPI Main_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7, LPDDDEVICEIDENTIFIER2, DWORD);
|
HRESULT WINAPI Main_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW4, LPDDDEVICEIDENTIFIER, DWORD);
|
||||||
|
HRESULT WINAPI Main_DirectDraw_GetDeviceIdentifier7(LPDIRECTDRAW7, LPDDDEVICEIDENTIFIER2, DWORD);
|
||||||
|
|
||||||
HRESULT WINAPI Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7, DWORD, LPDDSURFACEDESC2, LPVOID,
|
HRESULT WINAPI Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7, DWORD, LPDDSURFACEDESC2, LPVOID,
|
||||||
LPDDENUMSURFACESCALLBACK7);
|
LPDDENUMSURFACESCALLBACK7);
|
||||||
|
@ -39,7 +40,7 @@ HRESULT WINAPI Main_DirectDraw_CreatePalette(LPDIRECTDRAW7, DWORD, LPPALETTEENTR
|
||||||
HRESULT WINAPI Main_DirectDraw_CreateSurface(LPDIRECTDRAW, LPDDSURFACEDESC, LPDIRECTDRAWSURFACE *, IUnknown *);
|
HRESULT WINAPI Main_DirectDraw_CreateSurface(LPDIRECTDRAW, LPDDSURFACEDESC, LPDIRECTDRAWSURFACE *, IUnknown *);
|
||||||
HRESULT WINAPI Main_DirectDraw_CreateSurface4(LPDIRECTDRAW7, LPDDSURFACEDESC2, LPDIRECTDRAWSURFACE7 *, IUnknown *);
|
HRESULT WINAPI Main_DirectDraw_CreateSurface4(LPDIRECTDRAW7, LPDDSURFACEDESC2, LPDIRECTDRAWSURFACE7 *, IUnknown *);
|
||||||
HRESULT WINAPI Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7, LPDIRECTDRAWSURFACE7, LPDIRECTDRAWSURFACE7*);
|
HRESULT WINAPI Main_DirectDraw_DuplicateSurface(LPDIRECTDRAW7, LPDIRECTDRAWSURFACE7, LPDIRECTDRAWSURFACE7*);
|
||||||
HRESULT WINAPI Main_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7, LPDDDEVICEIDENTIFIER2, DWORD);
|
|
||||||
|
|
||||||
HRESULT WINAPI Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7, DWORD, LPDDSURFACEDESC2, LPVOID,
|
HRESULT WINAPI Main_DirectDraw_EnumSurfaces(LPDIRECTDRAW7, DWORD, LPDDSURFACEDESC2, LPVOID,
|
||||||
LPDDENUMSURFACESCALLBACK7);
|
LPDDENUMSURFACESCALLBACK7);
|
||||||
|
|
|
@ -413,6 +413,64 @@ Main_DirectDraw_CreateSurface4(LPDIRECTDRAW7 iface, LPDDSURFACEDESC2 pDDSD,
|
||||||
return ret;
|
return ret;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/* For DirectDraw 4 - 6 */
|
||||||
|
HRESULT WINAPI
|
||||||
|
Main_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW4 iface,
|
||||||
|
LPDDDEVICEIDENTIFIER pDDDI, DWORD dwFlags)
|
||||||
|
{
|
||||||
|
HRESULT retVal = DD_OK;
|
||||||
|
DDDEVICEIDENTIFIER2 pDDDI2;
|
||||||
|
|
||||||
|
ZeroMemory(&pDDDI2,sizeof(DDDEVICEIDENTIFIER2));
|
||||||
|
|
||||||
|
_SEH_TRY
|
||||||
|
{
|
||||||
|
memcpy(&pDDDI2 , pDDDI, sizeof(DDDEVICEIDENTIFIER));
|
||||||
|
|
||||||
|
retVal = Main_DirectDraw_GetDeviceIdentifier7((LPDIRECTDRAW7)iface, &pDDDI2, dwFlags);
|
||||||
|
|
||||||
|
if (IsBadWritePtr(pDDDI, sizeof(DDDEVICEIDENTIFIER)))
|
||||||
|
{
|
||||||
|
retVal = DDERR_INVALIDPARAMS;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
memcpy(pDDDI , &pDDDI2, sizeof(DDDEVICEIDENTIFIER) );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_SEH_HANDLE
|
||||||
|
{
|
||||||
|
retVal = DD_FALSE;
|
||||||
|
}
|
||||||
|
_SEH_END;
|
||||||
|
|
||||||
|
return retVal;
|
||||||
|
}
|
||||||
|
|
||||||
|
HRESULT WINAPI
|
||||||
|
Main_DirectDraw_GetDeviceIdentifier7(LPDIRECTDRAW7 iface,
|
||||||
|
LPDDDEVICEIDENTIFIER2 pDDDI, DWORD dwFlags)
|
||||||
|
{
|
||||||
|
// HRESULT retVal = DD_OK;
|
||||||
|
HRESULT retVal = DD_FALSE;
|
||||||
|
DX_WINDBG_trace();
|
||||||
|
|
||||||
|
_SEH_TRY
|
||||||
|
{
|
||||||
|
if (IsBadWritePtr( pDDDI, sizeof(DDDEVICEIDENTIFIER2) ) )
|
||||||
|
{
|
||||||
|
retVal = DDERR_INVALIDPARAMS;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
_SEH_HANDLE
|
||||||
|
{
|
||||||
|
retVal = DD_FALSE;
|
||||||
|
}
|
||||||
|
_SEH_END;
|
||||||
|
|
||||||
|
return retVal;
|
||||||
|
}
|
||||||
|
|
||||||
/* 5 of 31 DirectDraw7_Vtable api are working simluare to windows */
|
/* 5 of 31 DirectDraw7_Vtable api are working simluare to windows */
|
||||||
/* 8 of 31 DirectDraw7_Vtable api are under devloping / testing */
|
/* 8 of 31 DirectDraw7_Vtable api are under devloping / testing */
|
||||||
|
|
||||||
|
@ -445,7 +503,7 @@ IDirectDraw7Vtbl DirectDraw7_Vtable =
|
||||||
Main_DirectDraw_GetSurfaceFromDC,
|
Main_DirectDraw_GetSurfaceFromDC,
|
||||||
Main_DirectDraw_RestoreAllSurfaces,
|
Main_DirectDraw_RestoreAllSurfaces,
|
||||||
Main_DirectDraw_TestCooperativeLevel,
|
Main_DirectDraw_TestCooperativeLevel,
|
||||||
Main_DirectDraw_GetDeviceIdentifier,
|
Main_DirectDraw_GetDeviceIdentifier7,
|
||||||
Main_DirectDraw_StartModeTest,
|
Main_DirectDraw_StartModeTest,
|
||||||
Main_DirectDraw_EvaluateMode
|
Main_DirectDraw_EvaluateMode
|
||||||
};
|
};
|
||||||
|
|
|
@ -117,12 +117,6 @@ HRESULT WINAPI Main_DirectDraw_TestCooperativeLevel(LPDIRECTDRAW7 iface)
|
||||||
DX_STUB;
|
DX_STUB;
|
||||||
}
|
}
|
||||||
|
|
||||||
HRESULT WINAPI Main_DirectDraw_GetDeviceIdentifier(LPDIRECTDRAW7 iface,
|
|
||||||
LPDDDEVICEIDENTIFIER2 pDDDI, DWORD dwFlags)
|
|
||||||
{
|
|
||||||
DX_WINDBG_trace();
|
|
||||||
DX_STUB;
|
|
||||||
}
|
|
||||||
|
|
||||||
HRESULT WINAPI Main_DirectDraw_StartModeTest(LPDIRECTDRAW7 iface, LPSIZE pModes,
|
HRESULT WINAPI Main_DirectDraw_StartModeTest(LPDIRECTDRAW7 iface, LPSIZE pModes,
|
||||||
DWORD dwNumModes, DWORD dwFlags)
|
DWORD dwNumModes, DWORD dwFlags)
|
||||||
|
|
Loading…
Reference in a new issue