mirror of
https://github.com/andreili/klipper.git
synced 2025-09-20 11:54:42 +02:00
gcode: Fix out-of-order check for M112 when read from gcode pseudo-tty
Make sure to check for an out-of-order M112 command on the gcode pseudo-tty even if there is no pending commands being processed from that gcode pseudo-tty. There could be long running commands pending from webhooks, virtual_sdcard, or similar. Signed-off-by: Kevin O'Connor <kevin@koconnor.net>
This commit is contained in:
parent
68b67a16d6
commit
96c3ca160e
@ -430,18 +430,17 @@ class GCodeIO:
|
|||||||
self.gcode.request_restart('exit')
|
self.gcode.request_restart('exit')
|
||||||
pending_commands.append("")
|
pending_commands.append("")
|
||||||
# Handle case where multiple commands pending
|
# Handle case where multiple commands pending
|
||||||
if self.is_processing_data or len(pending_commands) > 1:
|
if len(pending_commands) < 20:
|
||||||
if len(pending_commands) < 20:
|
# Check for M112 out-of-order
|
||||||
# Check for M112 out-of-order
|
for line in lines:
|
||||||
for line in lines:
|
if self.m112_r.match(line) is not None:
|
||||||
if self.m112_r.match(line) is not None:
|
self.gcode.cmd_M112(None)
|
||||||
self.gcode.cmd_M112(None)
|
if self.is_processing_data:
|
||||||
if self.is_processing_data:
|
if len(pending_commands) >= 20:
|
||||||
if len(pending_commands) >= 20:
|
# Stop reading input
|
||||||
# Stop reading input
|
self.reactor.unregister_fd(self.fd_handle)
|
||||||
self.reactor.unregister_fd(self.fd_handle)
|
self.fd_handle = None
|
||||||
self.fd_handle = None
|
return
|
||||||
return
|
|
||||||
# Process commands
|
# Process commands
|
||||||
self.is_processing_data = True
|
self.is_processing_data = True
|
||||||
while pending_commands:
|
while pending_commands:
|
||||||
|
Loading…
x
Reference in New Issue
Block a user