Reviewers: ,

Message:
Copy of https://chromiumcodereview.appspot.com/9429008/.

Description:
Fix Object.getOwnPropertyDescriptor in string elements.

This fixes Object.getOwnPropertyDescriptor to report string character
elements as enumerable in accordance with the spec.

BUG=v8:862
TEST=mjsunit/get-own-property-descriptor


Please review this at https://chromiumcodereview.appspot.com/9447053/

SVN Base: https://v8.googlecode.com/svn/branches/bleeding_edge

Affected files:
  M src/runtime.cc
  M test/mjsunit/get-own-property-descriptor.js


Index: src/runtime.cc
diff --git a/src/runtime.cc b/src/runtime.cc
index 6d187ad4975978b34dd75bf56f26682ec8a0ed50..b377e6e54ba78d882713223bec38e6be17fe28f8 100644
--- a/src/runtime.cc
+++ b/src/runtime.cc
@@ -1039,7 +1039,7 @@ RUNTIME_FUNCTION(MaybeObject*, Runtime_GetOwnProperty) {
         elms->set(IS_ACCESSOR_INDEX, heap->false_value());
         elms->set(VALUE_INDEX, *substr);
         elms->set(WRITABLE_INDEX, heap->false_value());
-        elms->set(ENUMERABLE_INDEX,  heap->false_value());
+        elms->set(ENUMERABLE_INDEX,  heap->true_value());
         elms->set(CONFIGURABLE_INDEX, heap->false_value());
         return *desc;
       }
Index: test/mjsunit/get-own-property-descriptor.js
diff --git a/test/mjsunit/get-own-property-descriptor.js b/test/mjsunit/get-own-property-descriptor.js index abb24200343d00c4d50fb98bf840ee94a52657c8..159c63bcc1f7e7c8698fd92e654e070c8a56427a 100644
--- a/test/mjsunit/get-own-property-descriptor.js
+++ b/test/mjsunit/get-own-property-descriptor.js
@@ -73,7 +73,7 @@ assertEquals(descObjectElement.value, 42);
 var a = new String('foobar');
 for (var i = 0; i < a.length; i++) {
   var descStringObject = Object.getOwnPropertyDescriptor(a, i);
-  assertFalse(descStringObject.enumerable);
+  assertTrue(descStringObject.enumerable);
   assertFalse(descStringObject.configurable);
   assertFalse(descStringObject.writable);
   assertEquals(descStringObject.value, a.substring(i, i+1));


--
v8-dev mailing list
[email protected]
http://groups.google.com/group/v8-dev

Reply via email to