parse_mirror() make use of cmd_words_len, refactor small parts

This commit is contained in:
René van Dorst
2026-04-18 19:35:51 +02:00
parent f71e869b97
commit 49c43082a3
+5 -4
View File
@@ -554,18 +554,19 @@ void parse_mirror(void)
return; return;
} }
if (!isnumber(cmd_buffer[cmd_words_b[1]])) { if (cmd_words_len < 2 || !isnumber(cmd_buffer[cmd_words_b[1]])) {
print_string("Port missing: mirror <mirroring port> [port][t/r]...\n"); print_string("Port/command missing: mirror [status/off/<mirroring port> [port][t/r]]...\n");
return; return;
} }
mirroring_port = cmd_buffer[cmd_words_b[1]] - '1'; mirroring_port = cmd_buffer[cmd_words_b[1]] - '1';
if (isnumber(cmd_buffer[cmd_words_b[1] + 1])) if (isnumber(cmd_buffer[cmd_words_b[1] + 1]))
mirroring_port = (mirroring_port + 1) * 10 + cmd_buffer[cmd_words_b[1] + 1] - '1'; mirroring_port = (mirroring_port + 1) * 10 + cmd_buffer[cmd_words_b[1] + 1] - '1';
mirroring_port = machine.phys_to_log_port[mirroring_port]; mirroring_port = machine.phys_to_log_port[mirroring_port];
uint8_t w = 2; uint8_t w = 2;
while (cmd_words_b[w] > 0) { while (w < cmd_words_len) {
uint8_t port; uint8_t port;
if (isnumber(cmd_buffer[cmd_words_b[w]])) { if (isnumber(cmd_buffer[cmd_words_b[w]])) {
port = cmd_buffer[cmd_words_b[w]] - '1'; port = cmd_buffer[cmd_words_b[w]] - '1';