Fix PowerShell error parsing to handle timeout and non-XML stderr #4066
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.
When PowerShell commands timeout and are killed, stderr may be empty or contain non-XML content. The _parse_error_message() method was attempting to parse all stderr as XML without validation, causing ElementTree.ParseError.
Changes:
This prevents crashes when processes are killed due to timeout or produce non-standard error output.