Check WND structures before accessing

Uwe Bonnes bon at elektron.ikp.physik.tu-darmstadt.de
Sat Dec 15 14:19:06 CST 2001


Changelog:
	include/x11drv: get_client_window/get_whole_window
	Check substructure before accessing
	windows/win.c: create_window_handle
	Create WND structure with HEAP_ZERO_MEMORY

Remark:
This made encarta99 start.

Bye

Uwe Bonnes                bon at elektron.ikp.physik.tu-darmstadt.de

Free Software: If you contribute nothing, expect nothing
--
Index: wine/include/x11drv.h
===================================================================
RCS file: /home/wine/wine/include/x11drv.h,v
retrieving revision 1.94
diff -u -r1.94 x11drv.h
--- wine/include/x11drv.h	6 Nov 2001 20:57:19 -0000	1.94
+++ wine/include/x11drv.h	15 Dec 2001 20:15:44 -0000
@@ -380,13 +380,13 @@
 inline static Window get_client_window( WND *wnd )
 {
     struct x11drv_win_data *data = wnd->pDriverData;
-    return data->client_window;
+    return (data)?data->client_window:0;
 }
 
 inline static Window get_whole_window( WND *wnd )
 {
     struct x11drv_win_data *data = wnd->pDriverData;
-    return data->whole_window;
+    return (data)?data->whole_window:0;
 }
 
 extern void X11DRV_SetFocus( HWND hwnd );
Index: wine/windows/win.c
===================================================================
RCS file: /home/wine/wine/windows/win.c,v
retrieving revision 1.172
diff -u -r1.172 win.c
--- wine/windows/win.c	6 Dec 2001 22:33:58 -0000	1.172
+++ wine/windows/win.c	15 Dec 2001 20:15:47 -0000
@@ -83,7 +83,7 @@
     BOOL res;
     user_handle_t handle = 0;
     WORD index;
-    WND *win = HeapAlloc( GetProcessHeap(), 0, size );
+    WND *win = HeapAlloc( GetProcessHeap(), HEAP_ZERO_MEMORY, size );
 
     if (!win) return NULL;
 




More information about the wine-patches mailing list