Tools: Handle IO error in idf.py output capturing

Closes https://github.com/espressif/esp-idf/issues/9649
This commit is contained in:
Roland Dobai
2022-08-31 16:03:57 +02:00
parent 34230426a6
commit d1c61d29d3

View File

@ -246,10 +246,14 @@ class RunTool:
print(fit_text_in_terminal(output.strip('\n\r')), end='', file=output_stream)
async def read_stream() -> Optional[str]:
output_b = await input_stream.readline()
if not output_b:
try:
output_b = await input_stream.readline()
return output_b.decode(errors='ignore')
except (asyncio.LimitOverrunError, asyncio.IncompleteReadError) as e:
print(e, file=sys.stderr)
return None
except AttributeError:
return None
return output_b.decode(errors='ignore')
async def read_interactive_stream() -> Optional[str]:
buffer = b''