diff --git a/src/ripple_data/protocol/STParsedJSON.cpp b/src/ripple_data/protocol/STParsedJSON.cpp index 49bfb99a0..130f2e460 100644 --- a/src/ripple_data/protocol/STParsedJSON.cpp +++ b/src/ripple_data/protocol/STParsedJSON.cpp @@ -685,6 +685,13 @@ bool STParsedJSON::parse (std::string const& json_name, // a vector std::string const objectName (value[i].getMemberNames()[0]);; SField::ref const nameField (SField::getField(objectName)); + + if (nameField == sfInvalid) + { + error = unknown_field (json_name, objectName); + return false; + } + Json::Value const objectFields (value[i][objectName]); std::unique_ptr sub_object_;