- [NtDDraw]

- Export global DD context size. Create a container for both PDev and EDDG structures. When allocating PDev and add the DD context size if not zero.

svn path=/trunk/; revision=43176
This commit is contained in:
James Tabor 2009-09-27 03:12:02 +00:00
parent efc1228ec6
commit 91faf8f601
3 changed files with 13 additions and 2 deletions

View file

@ -1,6 +1,8 @@
#ifndef __WIN32K_PDEVOBJ_H
#define __WIN32K_PDEVOBJ_H
#include <drivers/directx/directxint.h>
/* PDEVOBJ flags */
#define PDEV_DISPLAY 0x00000001 /* Display device */
#define PDEV_HARDWARE_POINTER 0x00000002 /* Supports hardware cursor */
@ -134,4 +136,13 @@ typedef struct _PDEVOBJ
struct _EDD_DIRECTDRAW_GLOBAL * pEDDgpl;
} PDEVOBJ, *PPDEVOBJ;
/* PDEV and EDDX extra data container.*/
typedef struct _PDEVEDD
{
PDEVOBJ pdevobj;
EDD_DIRECTDRAW_GLOBAL EDDgpl;
} PDEVEDD, *PPDEVEDD;
extern ULONG gdwDirectDrawContext;
#endif /* !__WIN32K_PDEVOBJ_H */

View file

@ -22,7 +22,7 @@ extern EDD_DIRECTDRAW_GLOBAL edd_DdirectDraw_Global;
DRVFN gpDxFuncs[DXG_INDEX_DxDdIoctl];
HANDLE ghDxGraphics = NULL;
ULONG gdwDirectDrawContext;
ULONG gdwDirectDrawContext = 0;
#define DXDBG 1

View file

@ -229,7 +229,7 @@ IntPrepareDriver(VOID)
RtlZeroMemory(&PrimarySurface, sizeof(PrimarySurface));
// if (!pPrimarySurface) pPrimarySurface = ExAllocatePoolWithTag(PagedPool, sizeof(PDEVOBJ), TAG_GDIPDEV);
// if (!pPrimarySurface) pPrimarySurface = ExAllocatePoolWithTag(PagedPool, gdwDirectDrawContext + sizeof(PDEVOBJ), TAG_GDIPDEV);
PrimarySurface.VideoFileObject = DRIVER_FindMPDriver(DisplayNumber);