Take care of one BSOD in NtGdiDdCreateDirectDrawObject, it is not correct fix, it is a work around, the HDC can be NULL. it prevent some bsod for my new test apps for directx
Modified: trunk/reactos/subsys/win32k/ntddraw/ddraw.c

Modified: trunk/reactos/subsys/win32k/ntddraw/ddraw.c
--- trunk/reactos/subsys/win32k/ntddraw/ddraw.c	2005-12-09 19:28:04 UTC (rev 20016)
+++ trunk/reactos/subsys/win32k/ntddraw/ddraw.c	2005-12-09 20:40:52 UTC (rev 20017)
@@ -48,7 +48,13 @@
 	RtlZeroMemory(&palette_callbacks, sizeof(DD_PALETTECALLBACKS));
 	palette_callbacks.dwSize = sizeof(DD_PALETTECALLBACKS);
 
-	
+	/* FIXME hdc can be zero for d3d9 */
+    /* we need create it, if in that case */
+	if (hdc == NULL)
+	{
+	    return NULL;
+    }
+    
 	DC *pDC = DC_LockDc(hdc);
 	if (!pDC)
 		return NULL;