uefi: Handle break in --console recent#131
Merged
JohnAZoidberg merged 3 commits intomainfrom Mar 8, 2026
Merged
Conversation
Member
Author
|
Hm no I don't think this will fix it |
e2cc029 to
3dc40c1
Compare
Otherwise if you run `framework_tool.efi --console recent -b` and then stop at one of the screens, the app never exits. Signed-off-by: Daniel Schaefer <dhs@frame.work>
…vent get_page_break only returns whether page break mode is enabled, not whether the user requested an execution break (e.g. by pressing 'q' during pagination or Ctrl+C). Use boot::check_event on the execution_break Event instead, matching the edk2 ShellGetExecutionBreakFlag implementation. Signed-off-by: Daniel Schaefer <dhs@frame.work>
The uefi crate's println! macro calls .expect() on write results. When the user presses 'q' during -b page break mode, the UEFI shell's ConsoleLogger disables output and returns EFI_DEVICE_ERROR for all subsequent writes. This causes the .expect() to panic, resulting in a page fault crash. Replace the uefi crate's print!/println! macros with non-panicking versions that silently ignore write errors, allowing the application to exit cleanly after the user breaks out of pagination. Signed-off-by: Daniel Schaefer <dhs@frame.work>
3dc40c1 to
00dc627
Compare
Member
Author
Necessary but not sufficient. Now it works - tried in qemu with |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Otherwise if you run
framework_tool.efi --console recent -band then stop at one of the screens, the app never exits.