From: Mazet Laurent Date: Tue, 6 May 2025 15:28:00 +0000 (+0200) Subject: correct string parsing for array X-Git-Tag: v1.0~29^2~15 X-Git-Url: https://secure.softndesign.org/git/?a=commitdiff_plain;h=babc46b51a16ea9499b44c2ab4fc4c14fa93f57f;p=morep.git correct string parsing for array --- diff --git a/parse.c b/parse.c index 27a07f4..e9063de 100644 --- a/parse.c +++ b/parse.c @@ -55,7 +55,15 @@ int parse_array (char *str, uint8_t *buffer, int maxlen) VERBOSE (morep, WARNING, PRINTF ("string too large (%d > %d) for '%s'\n", len, maxlen, str)); len = maxlen; } - memcpy (buffer, str + 1, len); + int j = 0; + for (int i = 1; i < len + 1; i++, j++) { + if ((str[i] == '\\') && (str[i + 1] == ' ')) { + i++; + } + buffer[j] = str[i]; + } + len = j; + VERBOSE (morep, TRACE, buffer[len] = '\0'; PRINTF ("string[%d]: '%s'\n", len, buffer)); } else { VERBOSE (morep, ERROR, PRINTF ("incomplet string '%s'\n", str)); }