encapsulate sys.stdout.flush() into logger, guard against None sys.stdout (ESPTOOL-1008) #1064
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.
This change fixes the following bug(s):
fix(esptool/all) : Encapsulates sys.stdout.flush() in logger, with a guard if stdout is not valid (e.g. None)
Resolves #1063
We are using esptool to flash firmware in the context of our app.
This app runs on Kivy, and built with Pyinstaller. On windows, it appears that sys.stdout is not available (sys.stdout is None)
Under these conditions, esptool will crash when sys.stdout.flush() is called
What is the Expected Behaviour?
esptool should guard against this condition and not crash if sys.stdout is not available.
Encapsulates sys.stdout.flush() in logger, with a guard if stdout is not valid (e.g. None)