{
va_list ap;
char msg_text[JSON_ERROR_TEXT_LENGTH];
- char msg_with_context[JSON_ERROR_TEXT_LENGTH];
+ char msg_with_context[JSON_ERROR_TEXT_LENGTH + 28];
int line = -1, col = -1;
size_t pos = 0;
if(saved_text && saved_text[0])
{
if(lex->saved_text.length <= 20) {
- snprintf(msg_with_context, JSON_ERROR_TEXT_LENGTH,
+ snprintf(msg_with_context, JSON_ERROR_TEXT_LENGTH + 28,
"%s near '%s'", msg_text, saved_text);
msg_with_context[JSON_ERROR_TEXT_LENGTH - 1] = '\0';
result = msg_with_context;
result = msg_text;
}
else {
- snprintf(msg_with_context, JSON_ERROR_TEXT_LENGTH,
+ snprintf(msg_with_context, JSON_ERROR_TEXT_LENGTH + 17,
"%s near end of file", msg_text);
msg_with_context[JSON_ERROR_TEXT_LENGTH - 1] = '\0';
result = msg_with_context;
}
json = jsonp_stringn_nocheck_own(value, len);
- if(json) {
- lex->value.string.val = NULL;
- lex->value.string.len = 0;
- }
+ lex->value.string.val = NULL;
+ lex->value.string.len = 0;
break;
}
static int fd_get_func(int *fd)
{
- uint8_t c;
#ifdef HAVE_UNISTD_H
+ uint8_t c;
if (read(*fd, &c, 1) == 1)
return c;
#endif