Author: greatlrd
Date: Sat Dec 2 13:27:56 2006
New Revision: 25015
URL:
http://svn.reactos.org/svn/reactos?rev=25015&view=rev
Log:
adding check if it is IID_IDirectDraw7 on right place and learn it is
lpDD->QueryInterface that optain the d3d interface.
Modified:
trunk/reactos/dll/directx/ddraw/main/ddraw_main.c
trunk/reactos/dll/directx/ddraw/rosdraw.h
trunk/reactos/dll/directx/ddraw/startup.c
Modified: trunk/reactos/dll/directx/ddraw/main/ddraw_main.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/main/ddr…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/main/ddraw_main.c (original)
+++ trunk/reactos/dll/directx/ddraw/main/ddraw_main.c Sat Dec 2 13:27:56 2006
@@ -28,6 +28,10 @@
DX_WINDBG_trace();
+ /* fixme
+ the D3D object cab be optain from here
+ Direct3D7
+ */
if (IsEqualGUID(&IID_IDirectDraw7, id))
{
/* DirectDraw7 Vtable */
Modified: trunk/reactos/dll/directx/ddraw/rosdraw.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/rosdraw.…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/rosdraw.h (original)
+++ trunk/reactos/dll/directx/ddraw/rosdraw.h Sat Dec 2 13:27:56 2006
@@ -620,11 +620,11 @@
*/
-#define DX_WINDBG_trace()
-#define DX_STUB
-#define DX_STUB_DD_OK return DD_OK;
-#define DX_STUB_str(x) printf("%s",x);
-#define DX_WINDBG_trace_res
+//#define DX_WINDBG_trace()
+//#define DX_STUB
+//#define DX_STUB_DD_OK return DD_OK;
+//#define DX_STUB_str(x) printf("%s",x);
+//#define DX_WINDBG_trace_res
/*
use this if want doing a trace from a program
@@ -635,58 +635,58 @@
This marco does not create warings when you compile
*/
-//#define DX_STUB \
-//{ \
-// static BOOL firstcall = TRUE; \
-// if (firstcall) \
-// { \
-// char buffer[1024]; \
-// sprintf ( buffer, "Function %s is not implemented yet (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
-// OutputDebugStringA(buffer); \
-// firstcall = FALSE; \
-// } \
-//} \
-// return DDERR_UNSUPPORTED;
-//
-//#define DX_STUB_DD_OK \
-//{ \
-// static BOOL firstcall = TRUE; \
-// if (firstcall) \
-// { \
-// char buffer[1024]; \
-// sprintf ( buffer, "Function %s is not implemented yet (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
-// OutputDebugStringA(buffer); \
-// firstcall = FALSE; \
-// } \
-//} \
-// return DD_OK;
-//
-//
-//#define DX_STUB_str(x) \
-// { \
-// char buffer[1024]; \
-// sprintf ( buffer, "Function %s %s (%s:%d)\n",
__FUNCTION__,x,__FILE__,__LINE__ ); \
-// OutputDebugStringA(buffer); \
-// }
-//
-//#define DX_WINDBG_trace() \
-// static BOOL firstcallx = TRUE; \
-// if (firstcallx) \
-// { \
-// char buffer[1024]; \
-// sprintf ( buffer, "Enter Function %s (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
-// OutputDebugStringA(buffer); \
-// firstcallx = TRUE; \
-// }
-//
-//#define DX_WINDBG_trace_res(width,height,bpp) \
-// static BOOL firstcallxx = TRUE; \
-// if (firstcallxx) \
-// { \
-// char buffer[1024]; \
-// sprintf ( buffer, "Setmode have been req width=%d, height=%d
bpp=%d\n",width,height,bpp); \
-// OutputDebugStringA(buffer); \
-// firstcallxx = FALSE; \
-// }
+#define DX_STUB \
+{ \
+ static BOOL firstcall = TRUE; \
+ if (firstcall) \
+ { \
+ char buffer[1024]; \
+ sprintf ( buffer, "Function %s is not implemented yet (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
+ OutputDebugStringA(buffer); \
+ firstcall = FALSE; \
+ } \
+} \
+ return DDERR_UNSUPPORTED;
+
+#define DX_STUB_DD_OK \
+{ \
+ static BOOL firstcall = TRUE; \
+ if (firstcall) \
+ { \
+ char buffer[1024]; \
+ sprintf ( buffer, "Function %s is not implemented yet (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
+ OutputDebugStringA(buffer); \
+ firstcall = FALSE; \
+ } \
+} \
+ return DD_OK;
+
+
+#define DX_STUB_str(x) \
+ { \
+ char buffer[1024]; \
+ sprintf ( buffer, "Function %s %s (%s:%d)\n",
__FUNCTION__,x,__FILE__,__LINE__ ); \
+ OutputDebugStringA(buffer); \
+ }
+
+#define DX_WINDBG_trace() \
+ static BOOL firstcallx = TRUE; \
+ if (firstcallx) \
+ { \
+ char buffer[1024]; \
+ sprintf ( buffer, "Enter Function %s (%s:%d)\n",
__FUNCTION__,__FILE__,__LINE__ ); \
+ OutputDebugStringA(buffer); \
+ firstcallx = TRUE; \
+ }
+
+#define DX_WINDBG_trace_res(width,height,bpp) \
+ static BOOL firstcallxx = TRUE; \
+ if (firstcallxx) \
+ { \
+ char buffer[1024]; \
+ sprintf ( buffer, "Setmode have been req width=%d, height=%d
bpp=%d\n",width,height,bpp); \
+ OutputDebugStringA(buffer); \
+ firstcallxx = FALSE; \
+ }
#endif /* __DDRAW_PRIVATE */
Modified: trunk/reactos/dll/directx/ddraw/startup.c
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/dll/directx/ddraw/startup.…
==============================================================================
--- trunk/reactos/dll/directx/ddraw/startup.c (original)
+++ trunk/reactos/dll/directx/ddraw/startup.c Sat Dec 2 13:27:56 2006
@@ -881,14 +881,18 @@
BOOL ex)
{
LPDDRAWI_DIRECTDRAW_INT This;
-
DX_WINDBG_trace();
+
+ if (!IsEqualGUID(&IID_IDirectDraw7, id))
+ {
+ return DDERR_INVALIDDIRECTDRAWGUID;
+ }
This = DxHeapMemAlloc(sizeof(DDRAWI_DIRECTDRAW_INT));
if (This == NULL)
{
- return E_OUTOFMEMORY;
+ return DDERR_OUTOFMEMORY;
}
This->lpLcl = DxHeapMemAlloc(sizeof(DDRAWI_DIRECTDRAW_INT));