diff options
Diffstat (limited to 'riscos/menus.c')
-rw-r--r-- | riscos/menus.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/riscos/menus.c b/riscos/menus.c index 42f2d6f01..b895395c9 100644 --- a/riscos/menus.c +++ b/riscos/menus.c @@ -2026,7 +2026,7 @@ int ro_gui_menu_get_checksum(void) { } menu = current_menu; - do { + while (menu_tree.items[i] != -1) { j = 0; do { if (menu->entries[j].icon_flags & wimp_ICON_SHADED) @@ -2034,12 +2034,12 @@ int ro_gui_menu_get_checksum(void) { if (menu->entries[j].menu_flags & wimp_MENU_TICKED) checksum ^= (2 << (i + j * 2)); } while (!(menu->entries[j++].menu_flags & wimp_MENU_LAST)); + j = menu_tree.items[i++]; - if (j != -1) { - menu = menu->entries[j].sub_menu; - if ((!menu) || (menu == wimp_NO_SUB_MENU)) - break; - } - } while (j != -1); + menu = menu->entries[j].sub_menu; + if ((!menu) || (menu == wimp_NO_SUB_MENU)) + break; + } + return checksum; } |