Revision: 10822
Author: [email protected]
Date: Fri Feb 24 03:58:09 2012
Log: 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
Review URL: https://chromiumcodereview.appspot.com/9447053
Patch from Ioseb Dzmanashvili <[email protected]>.
http://code.google.com/p/v8/source/detail?r=10822
Modified:
/branches/bleeding_edge/src/runtime.cc
/branches/bleeding_edge/test/mjsunit/get-own-property-descriptor.js
=======================================
--- /branches/bleeding_edge/src/runtime.cc Thu Feb 23 03:43:07 2012
+++ /branches/bleeding_edge/src/runtime.cc Fri Feb 24 03:58:09 2012
@@ -1039,7 +1039,7 @@
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;
}
=======================================
--- /branches/bleeding_edge/test/mjsunit/get-own-property-descriptor.js Thu
Sep 1 04:28:10 2011
+++ /branches/bleeding_edge/test/mjsunit/get-own-property-descriptor.js Fri
Feb 24 03:58:09 2012
@@ -73,7 +73,7 @@
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