A configfile can run before its target has selected visible output. On EFI,
clearing immediately activates text mode and erases the firmware splash even
when the target proceeds with a hidden-menu autoboot.

Defer the clear on inactive output terminals until they prepare for visible
output. Active terminals retain the existing immediate-clear behaviour. The
second patch adds functional coverage for silent and nested configfiles,
subsequent output, multiple terminals, explicit clears, empty output, and
verbose sleep cursor ordering.

Sean Rhodes (2):
  term: Defer configfile clear per output terminal
  tests: Exercise deferred configfile clear

Sean Rhodes (2):
  term: Defer configfile clear per output terminal
  tests: Exercise deferred configfile clear

 grub-core/Makefile.core.def           |   5 +
 grub-core/commands/configfile.c       |   3 +-
 grub-core/commands/sleep.c            |   4 +
 grub-core/normal/term.c               |  35 +++
 grub-core/term/efi/console.c          |  19 ++
 grub-core/tests/deferred_clear_test.c | 317 ++++++++++++++++++++++++++
 grub-core/tests/lib/functional_test.c |   1 +
 include/grub/term.h                   |  11 +
 8 files changed, 394 insertions(+), 1 deletion(-)
 create mode 100644 grub-core/tests/deferred_clear_test.c


_______________________________________________
Grub-devel mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/grub-devel

Reply via email to