Revert "Fix kv parsing bug in greentea client."

This reverts commit c70baa9289.

Reason for revert: needs to be reviewed again, will be sent via new PR
pull/13227/head
Martin Kojtal 2020-07-03 10:02:51 +01:00
parent 3400ef66e7
commit dd209da675
1 changed files with 12 additions and 15 deletions

View File

@ -523,7 +523,7 @@ static int CurTok = 0;
* *
* tok_eof ::= EOF (end of file) * tok_eof ::= EOF (end of file)
* tok_open ::= "{{" * tok_open ::= "{{"
* tok_close ::= "}}\n" * tok_close ::= "}}"
* tok_semicolon ::= ";" * tok_semicolon ::= ";"
* tok_string ::= [a-zA-Z0-9_-!@#$%^&*()]+ // See isstring() function * tok_string ::= [a-zA-Z0-9_-!@#$%^&*()]+ // See isstring() function
* *
@ -597,7 +597,7 @@ extern "C" int greentea_parse_kv(char *out_key,
case tok_open: case tok_open:
if (HandleKV(out_key, out_value, out_key_size, out_value_size)) { if (HandleKV(out_key, out_value, out_key_size, out_value_size)) {
// We've found {{ KEY ; VALUE }}\n expression // We've found {{ KEY ; VALUE }} expression
return 1; return 1;
} }
break; break;
@ -684,7 +684,7 @@ static int isstring(int c) {
* *
* <TOK_EOF> ::= EOF (end of file) * <TOK_EOF> ::= EOF (end of file)
* <TOK_OPEN> ::= "{{" * <TOK_OPEN> ::= "{{"
* <TOK_CLOSE> ::= "}}\n" * <TOK_CLOSE> ::= "}}"
* <TOK_SEMICOLON> ::= ";" * <TOK_SEMICOLON> ::= ";"
* <TOK_STRING> ::= [a-zA-Z0-9_-!@#$%^&*()]+ // See isstring() function * * <TOK_STRING> ::= [a-zA-Z0-9_-!@#$%^&*()]+ // See isstring() function *
* *
@ -740,13 +740,10 @@ static int gettok(char *out_str, const int str_size) {
if (LastChar == '}') { if (LastChar == '}') {
LastChar = greentea_getc(); LastChar = greentea_getc();
if (LastChar == '}') { if (LastChar == '}') {
LastChar = greentea_getc();
if (LastChar == '\n') {
LastChar = '!'; LastChar = '!';
return tok_close; return tok_close;
} }
} }
}
if (LastChar == EOF) if (LastChar == EOF)
return tok_eof; return tok_eof;
@ -765,8 +762,8 @@ static int gettok(char *out_str, const int str_size) {
* <MESSAGE>: <TOK_OPEN> <TOK_STRING> <TOK_SEMICOLON> <TOK_STRING> <TOK_CLOSE> * <MESSAGE>: <TOK_OPEN> <TOK_STRING> <TOK_SEMICOLON> <TOK_STRING> <TOK_CLOSE>
* *
* Examples: * Examples:
* message: "{{__timeout; 1000}}\n" * message: "{{__timeout; 1000}}"
* "{{__sync; 12345678-1234-5678-1234-567812345678}}\n" * "{{__sync; 12345678-1234-5678-1234-567812345678}}"
* *
* \param out_key Output buffer to store key string value * \param out_key Output buffer to store key string value
* \param out_value Output buffer to store value string value * \param out_value Output buffer to store value string value