Tweak nexttok for better string handling

Now a string that starts and ends with a quote (") is combined into a single (argc) argument rather than being split where spaces used to be
This commit is contained in:
MCUdude 2022-04-01 16:52:59 +02:00
parent e069871c8e
commit f0f9059ade
1 changed files with 9 additions and 2 deletions

View File

@ -126,12 +126,19 @@ static int nexttok(char * buf, char ** tok, char ** next)
q++;
/* isolate first token */
n = q+1;
while (*n && !isspace((int)*n))
n = q;
uint8_t quotes = 0;
while (*n && (!isspace((int)*n) || quotes)) {
if (*n == '\"')
quotes++;
else if (isspace((int)*n) && *(n-1) == '\"')
break;
n++;
}
if (*n) {
*n = 0;
avrdude_message(MSG_INFO, "q: %s\n", q);
n++;
}