Ensure that a string is flattened when entering JsonParser::ParseJson. Fixes issue...
authorwhesse@chromium.org <whesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 27 Jul 2011 14:34:59 +0000 (14:34 +0000)
committerwhesse@chromium.org <whesse@chromium.org@ce2b1a6d-e550-0410-aec6-3dcde31c8c00>
Wed, 27 Jul 2011 14:34:59 +0000 (14:34 +0000)
BUG=v8:1572
TEST=mjsunit/regress/regress-crbug-l84186.js

Review URL: http://codereview.chromium.org/7480044

git-svn-id: http://v8.googlecode.com/svn/branches/bleeding_edge@8746 ce2b1a6d-e550-0410-aec6-3dcde31c8c00

src/json-parser.h

index 3ef5afbb895f403bad7e007342fdaaf6a78ea8b4..f93b04d38ffe520f0a1615b51a9efcf3c5cf21ef 100644 (file)
@@ -166,7 +166,8 @@ class JsonParser BASE_EMBEDDED {
 template <bool seq_ascii>
 Handle<Object> JsonParser<seq_ascii>::ParseJson(Handle<String> source) {
   isolate_ = source->map()->isolate();
-  source_ = Handle<String>(source->TryFlattenGetString());
+  FlattenString(source);
+  source_ = source;
   source_length_ = source_->length();
 
   // Optimized fast case where we only have ASCII characters.