Do not reset line on serial commands without N
Fix regression introduced in fc10ca3146.
Accept incoming serial commands without line numbers (assumed to be
injected by the host), but do not reset the last line count when doing
so.
This commit is contained in:
parent
2bd4aef23e
commit
140961290d
|
|
@ -27,10 +27,7 @@ bool comment_mode = false;
|
|||
char *strchr_pointer; // just a pointer to find chars in the command string like X, Y, Z, E, etc
|
||||
|
||||
ShortTimer serialTimeoutTimer;
|
||||
|
||||
long gcode_N = 0;
|
||||
long gcode_LastN = 0;
|
||||
|
||||
uint32_t sdpos_atomic = 0;
|
||||
|
||||
|
||||
|
|
@ -372,7 +369,7 @@ void get_command()
|
|||
cmdbuffer[bufindw+serial_count+CMDHDRSIZE] = 0; //terminate string
|
||||
if(!comment_mode){
|
||||
|
||||
gcode_N = 0;
|
||||
long gcode_N = -1;
|
||||
|
||||
// Line numbers must be first in buffer
|
||||
|
||||
|
|
@ -459,7 +456,7 @@ void get_command()
|
|||
// Command is complete: store the current line into buffer, move to the next line.
|
||||
|
||||
// Store type of entry
|
||||
cmdbuffer[bufindw] = gcode_N ? CMDBUFFER_CURRENT_TYPE_USB_WITH_LINENR : CMDBUFFER_CURRENT_TYPE_USB;
|
||||
cmdbuffer[bufindw] = gcode_N >= 0 ? CMDBUFFER_CURRENT_TYPE_USB_WITH_LINENR : CMDBUFFER_CURRENT_TYPE_USB;
|
||||
|
||||
#ifdef CMDBUFFER_DEBUG
|
||||
SERIAL_ECHO_START;
|
||||
|
|
@ -475,7 +472,8 @@ void get_command()
|
|||
++ buflen;
|
||||
|
||||
// Update the processed gcode line
|
||||
gcode_LastN = gcode_N;
|
||||
if (gcode_N >= 0)
|
||||
gcode_LastN = gcode_N;
|
||||
|
||||
#ifdef CMDBUFFER_DEBUG
|
||||
SERIAL_ECHOPGM("Number of commands in the buffer: ");
|
||||
|
|
|
|||
|
|
@ -52,7 +52,6 @@ extern int serial_count;
|
|||
extern bool comment_mode;
|
||||
extern char *strchr_pointer;
|
||||
|
||||
extern long gcode_N;
|
||||
extern long gcode_LastN;
|
||||
|
||||
extern bool cmdqueue_pop_front();
|
||||
|
|
|
|||
Loading…
Reference in New Issue