We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
1 parent a82c91d commit 7aa164cCopy full SHA for 7aa164c
1 file changed
can/interfaces/slcan.py
@@ -219,15 +219,10 @@ def _read(self, timeout: float | None) -> str | None:
219
# Due to accessing `serialPortOrig.in_waiting` too often will reduce the performance.
220
# We read the `serialPortOrig.in_waiting` only once here.
221
size = self.serialPortOrig.in_waiting or 1
222
- if in_waiting > 0:
223
- self._buffer.extend(self.serialPortOrig.read(in_waiting))
224
- else:
225
- byte = self.serialPortOrig.read(1)
226
- if byte:
227
- self._buffer.extend(byte)
+ self._buffer.extend(self.serialPortOrig.read(size))
228
229
for i, byte in enumerate(self._buffer):
230
- if self._buffer[i] in (self._OK[0], self._ERROR[0]):
+ if byte in (self._OK[0], self._ERROR[0]):
231
string = self._buffer[: i + 1].decode()
232
del self._buffer[: i + 1]
233
return string
0 commit comments