| Index: test/cctest/test-strings.cc
|
| diff --git a/test/cctest/test-strings.cc b/test/cctest/test-strings.cc
|
| index 894d9214873fa49bb9b90a8ce051d378bc4a4473..7cddff3309369b3bb0f850b36d59a22533e6a614 100644
|
| --- a/test/cctest/test-strings.cc
|
| +++ b/test/cctest/test-strings.cc
|
| @@ -82,6 +82,7 @@ static void InitializeBuildingBlocks(
|
| Handle<String> building_blocks[NUMBER_OF_BUILDING_BLOCKS]) {
|
| // A list of pointers that we don't have any interest in cleaning up.
|
| // If they are reachable from a root then leak detection won't complain.
|
| + Zone* zone = Isolate::Current()->zone();
|
| for (int i = 0; i < NUMBER_OF_BUILDING_BLOCKS; i++) {
|
| int len = gen() % 16;
|
| if (len > 14) {
|
| @@ -113,11 +114,11 @@ static void InitializeBuildingBlocks(
|
| break;
|
| }
|
| case 2: {
|
| - uc16* buf = ZONE->NewArray<uc16>(len);
|
| + uc16* buf = zone->NewArray<uc16>(len);
|
| for (int j = 0; j < len; j++) {
|
| buf[j] = gen() % 65536;
|
| }
|
| - Resource* resource = new Resource(Vector<const uc16>(buf, len));
|
| + Resource* resource = new(zone) Resource(Vector<const uc16>(buf, len));
|
| building_blocks[i] = FACTORY->NewExternalStringFromTwoByte(resource);
|
| for (int j = 0; j < len; j++) {
|
| CHECK_EQ(buf[j], building_blocks[i]->Get(j));
|
| @@ -348,10 +349,11 @@ TEST(Utf8Conversion) {
|
|
|
|
|
| TEST(ExternalShortStringAdd) {
|
| - ZoneScope zone(Isolate::Current(), DELETE_ON_EXIT);
|
| + ZoneScope zonescope(Isolate::Current(), DELETE_ON_EXIT);
|
|
|
| InitializeVM();
|
| v8::HandleScope handle_scope;
|
| + Zone* zone = Isolate::Current()->zone();
|
|
|
| // Make sure we cover all always-flat lengths and at least one above.
|
| static const int kMaxLength = 20;
|
| @@ -365,25 +367,25 @@ TEST(ExternalShortStringAdd) {
|
|
|
| // Generate short ascii and non-ascii external strings.
|
| for (int i = 0; i <= kMaxLength; i++) {
|
| - char* ascii = ZONE->NewArray<char>(i + 1);
|
| + char* ascii = zone->NewArray<char>(i + 1);
|
| for (int j = 0; j < i; j++) {
|
| ascii[j] = 'a';
|
| }
|
| // Terminating '\0' is left out on purpose. It is not required for external
|
| // string data.
|
| AsciiResource* ascii_resource =
|
| - new AsciiResource(Vector<const char>(ascii, i));
|
| + new(zone) AsciiResource(Vector<const char>(ascii, i));
|
| v8::Local<v8::String> ascii_external_string =
|
| v8::String::NewExternal(ascii_resource);
|
|
|
| ascii_external_strings->Set(v8::Integer::New(i), ascii_external_string);
|
| - uc16* non_ascii = ZONE->NewArray<uc16>(i + 1);
|
| + uc16* non_ascii = zone->NewArray<uc16>(i + 1);
|
| for (int j = 0; j < i; j++) {
|
| non_ascii[j] = 0x1234;
|
| }
|
| // Terminating '\0' is left out on purpose. It is not required for external
|
| // string data.
|
| - Resource* resource = new Resource(Vector<const uc16>(non_ascii, i));
|
| + Resource* resource = new(zone) Resource(Vector<const uc16>(non_ascii, i));
|
| v8::Local<v8::String> non_ascii_external_string =
|
| v8::String::NewExternal(resource);
|
| non_ascii_external_strings->Set(v8::Integer::New(i),
|
|
|