- 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
#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 */
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 */
DRVFN gpDxFuncs[DXG_INDEX_DxDdIoctl];
HANDLE ghDxGraphics = NULL;
-ULONG gdwDirectDrawContext;
+ULONG gdwDirectDrawContext = 0;
#define DXDBG 1
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);