From c517d261bb099e83ac0d21fe55d1712ec3592023 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Wed, 12 Mar 2014 00:45:43 -0700 Subject: [PATCH] Return a sensible error for unknown inner JSON fields --- src/ripple_data/protocol/STParsedJSON.cpp | 7 +++++++ 1 file changed, 7 insertions(+) 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_;