From 1058df99ea2ba81e0201b8d7ae25ae93ec5b7730 Mon Sep 17 00:00:00 2001 From: JoelKatz Date: Sat, 13 Apr 2013 21:53:35 -0700 Subject: [PATCH] Reject objects with duplicate keys. --- src/cpp/json/json_reader.cpp | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/cpp/json/json_reader.cpp b/src/cpp/json/json_reader.cpp index 3623e71d7..cff2ed384 100644 --- a/src/cpp/json/json_reader.cpp +++ b/src/cpp/json/json_reader.cpp @@ -505,6 +505,11 @@ Reader::readObject( Token &tokenStart ) colon, tokenObjectEnd ); } + + // Reject duplicate names + if (currentValue().isMember(name)) + return addError( "Key '" + name + "' appears twice.", tokenName ); + Value &value = currentValue()[ name ]; nodes_.push( &value ); bool ok = readValue();