gcode: Use regular str() types for g-code commands on Python2
Avoid using unicode() types on Python2 as it can lead to subtle errors. Also, accept utf8 on gcode input (instead of just ascii). Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
85d0ef974c
commit
d6c3aaad8a
|
@ -381,13 +381,13 @@ class GCodeIO:
|
|||
def _process_data(self, eventtime):
|
||||
# Read input, separate by newline, and add to pending_commands
|
||||
try:
|
||||
data = os.read(self.fd, 4096)
|
||||
except os.error:
|
||||
data = str(os.read(self.fd, 4096).decode('utf8'))
|
||||
except os.error, UnicodeDecodeError:
|
||||
logging.exception("Read g-code")
|
||||
return
|
||||
self.input_log.append((eventtime, data))
|
||||
self.bytes_read += len(data)
|
||||
lines = data.decode().split('\n')
|
||||
lines = data.split('\n')
|
||||
lines[0] = self.partial_input + lines[0]
|
||||
self.partial_input = lines.pop()
|
||||
pending_commands = self.pending_commands
|
||||
|
|
Loading…
Reference in New Issue