Fixed a popup menu selection bug.

diff --git a/controls/menu.c b/controls/menu.c
index abefac9..682fe20 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -3895,13 +3895,18 @@
 {
     POPUPMENU *menu;
 
-    if (!(menu = (POPUPMENU *) USER_HEAP_LIN_ADDR(hmenu))) return 0; /*FIXME*/
+    if (!(menu = (POPUPMENU *) USER_HEAP_LIN_ADDR(hmenu)))
+	return -1;
 
     FIXME(menu, "(0x%x,%d,%d), stub!\n", hmenu, bypos, flags);
     if (bypos & MF_BYPOSITION)
     	return menu->defitem;
-    else
-    	return menu->items[menu->defitem].wID;
+    else {
+	FIXME (menu, "default item 0x%x\n", menu->defitem);
+	if ((menu->defitem > 0) && (menu->defitem < menu->nItems))
+	    return menu->items[menu->defitem].wID;
+    }
+    return -1;
 }
 
 /*******************************************************************