microsoft / winget-cli

WinGet is the Windows Package Manager. This project includes a CLI (Command Line Interface), PowerShell modules, and a COM (Component Object Model) API (Application Programming Interface).
https://learn.microsoft.com/windows/package-manager/
MIT License
23.37k stars 1.45k forks source link

Consume all input during extract sequence #4882

Closed JohnMcPMS closed 1 month ago

JohnMcPMS commented 1 month ago

Change

When extracting a sequence, consume all (up to 1KB really) input even if it doesn't start with an escape character.

This was spurred by an issue where the peek call was not returning (waiting for input). Pressing Enter broke it out of that wait, but other input was now at the front and blocked future attempts to extract the sequence.

The best solution to this would be to move all input handling to its own dedicated thread, but that is a much larger change.  

Validation

Manual confirmation that it continues to work in golden path.

Microsoft Reviewers: Open in CodeFlow