Check that ci->hWindowMenu is not zero before using it.

diff --git a/windows/mdi.c b/windows/mdi.c
index 1a81e6d..4048976 100644
--- a/windows/mdi.c
+++ b/windows/mdi.c
@@ -3,7 +3,8 @@
  * Copyright 1994, Bob Amstadt
  *           1995,1996 Alex Korobka
  *
- * This file contains routines to support MDI features.
+ * This file contains routines to support MDI (Multiple Document
+ * Interface) features .
  *
  * Notes: Fairly complete implementation. Any volunteers for 
  *	  "More windows..." stuff?
@@ -342,7 +343,8 @@
     }
 
     /* this menu is needed to set a check mark in MDI_ChildActivate */
-    AppendMenuA(ci->hWindowMenu ,MF_STRING ,wIDmenu, lpstrDef );
+    if (ci->hWindowMenu != 0)
+        AppendMenuA(ci->hWindowMenu ,MF_STRING ,wIDmenu, lpstrDef );
 
     ci->nActiveChildren++;
 
@@ -1116,7 +1118,8 @@
         }
 	MDI_UpdateFrameText(frameWnd, hwnd, MDI_NOFRAMEREPAINT,frameWnd->text);
 
-	AppendMenuA( ci->hWindowMenu, MF_SEPARATOR, 0, NULL );
+	if (ci->hWindowMenu != 0)
+	    AppendMenuA( ci->hWindowMenu, MF_SEPARATOR, 0, NULL );
 
 	GetClientRect(frameWnd->hwndSelf, &rect);
 	NC_HandleNCCalcSize( w, &rect );
@@ -1131,7 +1134,8 @@
       case WM_DESTROY:
 	if( ci->hwndChildMaximized )
             MDI_RestoreFrameMenu(w->parent, ci->hwndChildMaximized);
-	if((nItems = GetMenuItemCount(ci->hWindowMenu)) > 0) 
+	if((ci->hWindowMenu != 0) && 
+	   (nItems = GetMenuItemCount(ci->hWindowMenu)) > 0) 
 	{
     	    ci->idFirstChild = nItems - 1;
 	    ci->nActiveChildren++; 		/* to delete a separator */