returnsax->parse_error(chars_read,last_token,parse_error::create(113,chars_read,"byte after '#' must denote a number type; last byte: 0x"+last_token));
}
}
}
}
}
}
...
@@ -1393,6 +1393,10 @@ class binary_reader
...
@@ -1393,6 +1393,10 @@ class binary_reader
get_ignore_noop();
get_ignore_noop();
if(JSON_UNLIKELY(current!='#'))
if(JSON_UNLIKELY(current!='#'))
{
{
if(JSON_UNLIKELY(notunexpect_eof()))
{
returnfalse;
}
autolast_token=get_token_string();
autolast_token=get_token_string();
returnsax->parse_error(chars_read,last_token,parse_error::create(112,chars_read,"expected '#' after UBJSON type information; last byte: 0x"+last_token));
returnsax->parse_error(chars_read,last_token,parse_error::create(112,chars_read,"expected '#' after UBJSON type information; last byte: 0x"+last_token));
enum class binary_format_t { cbor, msgpack, ubjson };
enum class binary_format_t { cbor, msgpack, ubjson };
/*!
/*!
...
@@ -7016,8 +7017,8 @@ class binary_reader
...
@@ -7016,8 +7017,8 @@ class binary_reader
default:
default:
{
{
result=std::size_t(-1);
auto last_token = get_token_string();
returntrue;
return sax->parse_error(chars_read, last_token, parse_error::create(113, chars_read, "byte after '#' must denote a number type; last byte: 0x" + last_token));
}
}
}
}
}
}
...
@@ -7050,6 +7051,10 @@ class binary_reader
...
@@ -7050,6 +7051,10 @@ class binary_reader
get_ignore_noop();
get_ignore_noop();
if (JSON_UNLIKELY(current != '#'))
if (JSON_UNLIKELY(current != '#'))
{
{
if (JSON_UNLIKELY(not unexpect_eof()))
{
return false;
}
auto last_token = get_token_string();
auto last_token = get_token_string();
return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, "expected '#' after UBJSON type information; last byte: 0x" + last_token));
return sax->parse_error(chars_read, last_token, parse_error::create(112, chars_read, "expected '#' after UBJSON type information; last byte: 0x" + last_token));