diff --git a/controls/menu.c b/controls/menu.c
index 4875578a9c6a5a0606b8c2cc4c51403b89498f25..2e9b901fea463fa25eb03dc8caafc520243ae31d 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -3766,7 +3766,7 @@ HMENU WINAPI GetSystemMenu( HWND hWnd, BOOL bRevert )
 	    {
 		POPUPMENU *menu = (POPUPMENU*) 
 			   USER_HEAP_LIN_ADDR(wndPtr->hSysMenu);
-		if( menu->items[0].hSubMenu == MENU_DefSysPopup )
+		if( menu->nItems > 0 && menu->items[0].hSubMenu == MENU_DefSysPopup )
 		    menu->items[0].hSubMenu = MENU_CopySysPopup();
 	    }
 	}