From 2bc0df4aa35a89c5af7e54f459e2bbde20ca6a7e Mon Sep 17 00:00:00 2001 From: Samuel Mendoza-Jonas Date: Tue, 6 Nov 2018 15:34:51 +1100 Subject: ui/ncurses: Reset console options on boot The ncurses UI sets a few console options at startup that are needed for ncurses to work properly. These aren't reset however and can lead to quirks like the cursor being invisible after kexecing to the next kernel. The UI process doesn't have time to reset these when it is killed by kexec, so instead add a 'boot_active' field to status updates. This is set by boot.c's update handler so the UI can assume it is about to boot if it receives a status update with this field, and resets the console options. If the boot is cancelled for any reason the status update will reflect that and the console options are restored. Signed-off-by: Samuel Mendoza-Jonas --- ui/ncurses/nc-cui.h | 1 + 1 file changed, 1 insertion(+) (limited to 'ui/ncurses/nc-cui.h') diff --git a/ui/ncurses/nc-cui.h b/ui/ncurses/nc-cui.h index d26883b..abe4db9 100644 --- a/ui/ncurses/nc-cui.h +++ b/ui/ncurses/nc-cui.h @@ -77,6 +77,7 @@ struct cui { void *platform_info; unsigned int default_item; int (*on_boot)(struct cui *cui, struct cui_opt_data *cod); + bool preboot_mode; }; struct cui *cui_init(void* platform_info, -- cgit v1.2.1