Audit of all show_*_menu functions after the theme/background fix found 11 more cancel branches that called their parent directly instead of back_to. None are reachable from current keybindings (today's direct invocations target submenus that already use back_to), so the bug is latent — but any future `nomarchy-menu <area>` keybinding into one of these would bounce the user into the parent on Esc instead of exiting cleanly, the exact bug that prompted the previous commit's fix to show_theme_menu / show_background_menu. Mechanical sweep: *) show_main_menu ;; -> *) back_to show_main_menu ;; (5 sites) *) show_setup_menu ;; -> *) back_to show_setup_menu ;; (3 sites) *) show_update_menu ;; -> *) back_to show_update_menu ;; (3 sites) Behavior under nested navigation (BACK_TO_EXIT=false) is unchanged: back_to falls through to calling the parent function by name. Only direct-invocation cancel paths gain the correct exit-0 behavior. Action branches and go_to_menu's dispatch table intentionally still use direct calls — those are forward navigation, not cancel. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
12 KiB
Executable File
12 KiB
Executable File