Fixed assert in ParseSingleValue (found by fuzzer)

Change-Id: I84674eaab75b2b455e918b04e3027920430678ac
parent 8f1bebba
...@@ -669,11 +669,11 @@ CheckedError Parser::ParseField(StructDef &struct_def) { ...@@ -669,11 +669,11 @@ CheckedError Parser::ParseField(StructDef &struct_def) {
if (token_ == '=') { if (token_ == '=') {
NEXT(); NEXT();
ECHECK(ParseSingleValue(&field->name, field->value));
if (!IsScalar(type.base_type) || if (!IsScalar(type.base_type) ||
(struct_def.fixed && field->value.constant != "0")) (struct_def.fixed && field->value.constant != "0"))
return Error( return Error(
"default values currently only supported for scalars in tables"); "default values currently only supported for scalars in tables");
ECHECK(ParseSingleValue(&field->name, field->value));
} }
if (type.enum_def && if (type.enum_def &&
!type.enum_def->is_union && !type.enum_def->is_union &&
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment