diff --git a/src/python/devtest/os/conn/Serial.py b/src/python/devtest/os/conn/Serial.py index 92e93f1..2514921 100644 --- a/src/python/devtest/os/conn/Serial.py +++ b/src/python/devtest/os/conn/Serial.py @@ -118,6 +118,7 @@ class Serial(Connection): # export self._parent = parent self._rd_stream = None self._wr_stream = None + self._protocol = None self._fd = None self._stream_reader = None self._stream_writer = None @@ -259,7 +260,8 @@ class Serial(Connection): # export #transp, proto = await self.pair.env.eloop.connect_read_pipe(Fifos.Protocol, self._rd_stream) #self._stream_reader = asyncio.streams.StreamReader(transp, proto, None, loop) self._stream_reader = asyncio.StreamReader(limit=limit, loop=loop) - await loop.connect_read_pipe(lambda: asyncio.StreamReaderProtocol(self._stream_reader, loop=loop), self._rd_stream) + self._protocol = asyncio.StreamReaderProtocol(self._stream_reader, loop=loop) + await loop.connect_read_pipe(lambda: self._protocol, self._rd_stream) except: await self.close() raise @@ -276,6 +278,7 @@ class Serial(Connection): # export #self._rd_stream.close() #await self._rd_stream.wait_closed() self._rd_stream = None + self._protocol = None self._stream_writer = None self._stream_reader = None self._fd = None