- prevent crash when GetMenuDefaultItem is called on empty menu
- set default item on system menu
diff --git a/controls/menu.c b/controls/menu.c
index c2534fa..9035912 100644
--- a/controls/menu.c
+++ b/controls/menu.c
@@ -279,6 +279,7 @@
if( hMenu ) {
POPUPMENU* menu = (POPUPMENU *) USER_HEAP_LIN_ADDR(hMenu);
menu->wFlags |= MF_SYSMENU | MF_POPUP;
+ SetMenuDefaultItem(hMenu, SC_CLOSE, FALSE);
}
else {
hMenu = 0;
@@ -4395,6 +4396,10 @@
/* find default item */
item = menu->items;
+
+ /* empty menu */
+ if (! item) return -1;
+
while ( !( item->fState & MFS_DEFAULT ) )
{
i++; item++;