struct json_string_istream *jstream =
(struct json_string_istream *)stream;
struct json_parser *parser = jstream->parser;
- bool read_data;
+ bool stop_loop;
size_t old_pos;
int ret;
old_pos = str_len(parser->buffer);
ret = json_parser_continue(parser);
i_assert(str_len(parser->buffer) >= old_pos);
- read_data = str_len(parser->buffer) > old_pos;
+ stop_loop = (str_len(parser->buffer) > old_pos);
switch (ret) {
case JSON_PARSE_INTERRUPTED:
i_assert(stream->skip == 0 ||
break;
case JSON_PARSE_BOUNDARY:
jstream->ended = TRUE;
- read_data = TRUE;
if (str_len(parser->buffer) == old_pos) {
stream->istream.eof = TRUE;
return -1;
}
+ stop_loop = TRUE;
break;
case JSON_PARSE_NO_DATA:
stream->buffer = str_data(parser->buffer);
default:
i_unreached();
}
- } while (jstream->buffer_overflowed && !read_data);
+ } while (jstream->buffer_overflowed && !stop_loop);
stream->pos = str_len(parser->buffer);
stream->buffer = str_data(parser->buffer);