twister: scripts: Split lines before processing
Readline method sometimes receives more lines in buffer. Split them to avoid misinterpreting data in harness module. Signed-off-by: Grzegorz Chwierut <grzegorz.chwierut@nordicsemi.no>
This commit is contained in:
parent
8851891278
commit
79ef0b6b10
1 changed files with 7 additions and 6 deletions
|
@ -443,12 +443,13 @@ class DeviceHandler(Handler):
|
||||||
# Just because ser_fileno has data doesn't mean an entire line
|
# Just because ser_fileno has data doesn't mean an entire line
|
||||||
# is available yet.
|
# is available yet.
|
||||||
if serial_line:
|
if serial_line:
|
||||||
sl = serial_line.decode('utf-8', 'ignore').lstrip()
|
# can be more lines in serial_line so split them before handling
|
||||||
logger.debug("DEVICE: {0}".format(sl.rstrip()))
|
for sl in serial_line.decode('utf-8', 'ignore').splitlines():
|
||||||
|
log_out_fp.write(strip_ansi_sequences(sl).encode('utf-8'))
|
||||||
log_out_fp.write(strip_ansi_sequences(sl).encode('utf-8'))
|
log_out_fp.flush()
|
||||||
log_out_fp.flush()
|
if sl := sl.strip():
|
||||||
harness.handle(sl.rstrip())
|
logger.debug("DEVICE: {0}".format(sl))
|
||||||
|
harness.handle(sl)
|
||||||
|
|
||||||
if harness.status != TwisterStatus.NONE:
|
if harness.status != TwisterStatus.NONE:
|
||||||
if not harness.capture_coverage:
|
if not harness.capture_coverage:
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue