diff --git a/reactos/subsystems/win32/win32k/include/intddraw.h b/reactos/subsystems/win32/win32k/include/intddraw.h index a2752d66cbb..eb0e1defb19 100644 --- a/reactos/subsystems/win32/win32k/include/intddraw.h +++ b/reactos/subsystems/win32/win32k/include/intddraw.h @@ -101,6 +101,12 @@ typedef DWORD (NTAPI *PGD_DXDDSETOVERLAYPOSITION)(HANDLE, HANDLE, PDD_SETOVERLAY /* From eng.c */ typedef FLATPTR (NTAPI *PGD_HEAPVIDMEMALLOCALIGNED)(LPVIDMEM, DWORD, DWORD, LPSURFACEALIGNMENT, LPLONG); typedef VOID (NTAPI *PGD_VIDMEMFREE)(LPVMEMHEAP, FLATPTR); +typedef PVOID (NTAPI *PGD_ENGALLOCPRIVATEUSERMEM)(PDD_SURFACE_LOCAL, SIZE_T, ULONG) ; +typedef VOID (NTAPI *PGD_ENGFREEPRIVATEUSERMEM)(PDD_SURFACE_LOCAL, PVOID); +typedef DWORD (NTAPI *PGD_ENGDXIOCTL)(ULONG, PVOID, ULONG); +typedef PDD_SURFACE_LOCAL (NTAPI *PGD_ENGLOCKDIRECTDRAWSURFACE)(HANDLE); +typedef BOOL (NTAPI *PGD_ENGUNLOCKDIRECTDRAWSURFACE)(PDD_SURFACE_LOCAL); + /* Standard macro */ #define DXG_GET_INDEX_FUNCTION(INDEX, FUNCTION) \ diff --git a/reactos/subsystems/win32/win32k/ntddraw/d3d.c b/reactos/subsystems/win32/win32k/ntddraw/d3d.c index c5de4705177..67ea6e76985 100644 --- a/reactos/subsystems/win32/win32k/ntddraw/d3d.c +++ b/reactos/subsystems/win32/win32k/ntddraw/d3d.c @@ -258,7 +258,7 @@ NtGdiDdCreateD3DBuffer(HANDLE hDirectDraw, PDD_CREATESURFACEDATA puCreateSurfaceData, HANDLE *puhSurface) { - PGD_DDCREATED3DBUFFER pfnDdCreateD3DBuffer = (PGD_D3DCONTEXTDESTROYALL)gpDxFuncs[DXG_INDEX_DxDdCreateD3DBuffer].pfn; + PGD_DDCREATED3DBUFFER pfnDdCreateD3DBuffer = (PGD_DDCREATED3DBUFFER)gpDxFuncs[DXG_INDEX_DxDdCreateD3DBuffer].pfn; if (pfnDdCreateD3DBuffer == NULL) { diff --git a/reactos/subsystems/win32/win32k/ntddraw/dxeng.c b/reactos/subsystems/win32/win32k/ntddraw/dxeng.c index 29b0a5e49ca..925e25b9b9c 100644 --- a/reactos/subsystems/win32/win32k/ntddraw/dxeng.c +++ b/reactos/subsystems/win32/win32k/ntddraw/dxeng.c @@ -68,7 +68,7 @@ DxEngVisRgnUniq() /************************************************************************/ /* Enumate all drivers in win32k */ HDEV * -DxEngEnumerateHdev(HDEV *hdev); +DxEngEnumerateHdev(HDEV *hdev) { /* FIXME Enumate all drivers in win32k */ DPRINT1("We do not enumate any device from win32k "); diff --git a/reactos/subsystems/win32/win32k/ntddraw/eng.c b/reactos/subsystems/win32/win32k/ntddraw/eng.c index d2b8cd3b060..429e116ffe9 100644 --- a/reactos/subsystems/win32/win32k/ntddraw/eng.c +++ b/reactos/subsystems/win32/win32k/ntddraw/eng.c @@ -33,7 +33,7 @@ HeapVidMemAllocAligned(LPVIDMEM lpVidMem, if (pfnHeapVidMemAllocAligned == NULL) { DPRINT1("Warring no pfnHeapVidMemAllocAligned"); - return NULL; + return 0; } DPRINT1("Calling on dxg.sys pfnHeapVidMemAllocAligned"); @@ -104,11 +104,12 @@ EngFreePrivateUserMem(PDD_SURFACE_LOCAL psl, if (pfnEngFreePrivateUserMem == NULL) { DPRINT1("Warring no pfnEngFreePrivateUserMem"); - return DDHAL_DRIVER_NOTHANDLED; } - - DPRINT1("Calling on dxg.sys pfnEngFreePrivateUserMem"); - return pfnEngFreePrivateUserMem(psl, pv); + else + { + DPRINT1("Calling on dxg.sys pfnEngFreePrivateUserMem"); + pfnEngFreePrivateUserMem(psl, pv); + } } /************************************************************************/ @@ -132,7 +133,7 @@ EngDxIoctl(ULONG ulIoctl, } DPRINT1("Calling on dxg.sys pfnEngDxIoctl"); - return pfnEngFreePrivateUserMem(psl, pv); + return pfnEngDxIoctl(ulIoctl, pBuffer, ulBufferSize); } /************************************************************************/