diff options
author | zsquareplusc <cliechti@gmx.net> | 2019-08-13 13:29:50 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2019-08-13 13:29:50 +0200 |
commit | 14d613dbde6ae1d54dd2a4975541a0058594812e (patch) | |
tree | 1267db5803153ef9468632d2f402e67ceeb8019d | |
parent | c9e246271e009ce7c076b4bb67c0b67a776364b4 (diff) | |
parent | c83599a1089ba66718d355b2478722479cc86028 (diff) | |
download | pyserial-git-14d613dbde6ae1d54dd2a4975541a0058594812e.tar.gz |
Merge pull request #386 from jfleschExtFlowbird/master
rfc2217/close(): fix race condition
-rw-r--r-- | serial/rfc2217.py | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/serial/rfc2217.py b/serial/rfc2217.py index c0c3ae3..d388038 100644 --- a/serial/rfc2217.py +++ b/serial/rfc2217.py @@ -613,7 +613,7 @@ class Serial(SerialBase): try: timeout = Timeout(self._timeout) while len(data) < size: - if self._thread is None: + if self._thread is None or not self._thread.is_alive(): raise SerialException('connection failed (reader thread died)') buf = self._read_buffer.get(True, timeout.time_left()) if buf is None: @@ -790,7 +790,6 @@ class Serial(SerialBase): self._telnet_negotiate_option(telnet_command, byte) mode = M_NORMAL finally: - self._thread = None if self.logger: self.logger.debug("read thread terminated") |