Fix M118 parameter handling

Fix #10388
This commit is contained in:
Scott Lahteine
2018-04-12 19:10:04 -05:00
parent 3bc179a16f
commit 4c8751727a
2 changed files with 13 additions and 4 deletions

View File

@ -29,7 +29,16 @@
* E1 Have the host 'echo:' the text
*/
void GcodeSuite::M118() {
if (parser.seenval('E') && parser.value_bool()) SERIAL_ECHO_START();
if (parser.seenval('A') && parser.value_bool()) SERIAL_ECHOPGM("// ");
SERIAL_ECHOLN(parser.string_arg);
bool hasE = false, hasA = false;
char *p = parser.string_arg;
for (uint8_t i = 2; i--;)
if ((p[0] == 'A' || p[0] == 'E') && p[1] == '1') {
if (p[0] == 'A') hasA = true;
if (p[0] == 'E') hasE = true;
p += 2;
while (*p == ' ') ++p;
}
if (hasE) SERIAL_ECHO_START();
if (hasA) SERIAL_ECHOPGM("// ");
SERIAL_ECHOLN(p);
}