| Index: test/cctest/test-api.cc
|
| diff --git a/test/cctest/test-api.cc b/test/cctest/test-api.cc
|
| index a6b3f247e9e314352b4ff235543b2c62f9363f65..4d032b654a16642196d2d372902e621f2211f564 100644
|
| --- a/test/cctest/test-api.cc
|
| +++ b/test/cctest/test-api.cc
|
| @@ -185,7 +185,8 @@ THREADED_TEST(IsolateOfContext) {
|
| }
|
|
|
|
|
| -static void TestSignature(const char* loop_js, Local<Value> receiver) {
|
| +static void TestSignature(const char* loop_js, Local<Value> receiver,
|
| + v8::Isolate* isolate) {
|
| i::ScopedVector<char> source(200);
|
| i::SNPrintF(source,
|
| "for (var i = 0; i < 10; i++) {"
|
| @@ -202,7 +203,7 @@ static void TestSignature(const char* loop_js, Local<Value> receiver) {
|
| CHECK_EQ(10, signature_callback_count);
|
| } else {
|
| CHECK_EQ(v8_str("TypeError: Illegal invocation"),
|
| - try_catch.Exception()->ToString());
|
| + try_catch.Exception()->ToString(isolate));
|
| }
|
| }
|
|
|
| @@ -267,17 +268,17 @@ THREADED_TEST(ReceiverSignature) {
|
| i::SNPrintF(
|
| source, "var test_object = %s; test_object", test_objects[i]);
|
| Local<Value> test_object = CompileRun(source.start());
|
| - TestSignature("test_object.prop();", test_object);
|
| - TestSignature("test_object.accessor;", test_object);
|
| - TestSignature("test_object[accessor_key];", test_object);
|
| - TestSignature("test_object.accessor = 1;", test_object);
|
| - TestSignature("test_object[accessor_key] = 1;", test_object);
|
| + TestSignature("test_object.prop();", test_object, isolate);
|
| + TestSignature("test_object.accessor;", test_object, isolate);
|
| + TestSignature("test_object[accessor_key];", test_object, isolate);
|
| + TestSignature("test_object.accessor = 1;", test_object, isolate);
|
| + TestSignature("test_object[accessor_key] = 1;", test_object, isolate);
|
| if (i >= bad_signature_start_offset) test_object = Local<Value>();
|
| - TestSignature("test_object.prop_sig();", test_object);
|
| - TestSignature("test_object.accessor_sig;", test_object);
|
| - TestSignature("test_object[accessor_sig_key];", test_object);
|
| - TestSignature("test_object.accessor_sig = 1;", test_object);
|
| - TestSignature("test_object[accessor_sig_key] = 1;", test_object);
|
| + TestSignature("test_object.prop_sig();", test_object, isolate);
|
| + TestSignature("test_object.accessor_sig;", test_object, isolate);
|
| + TestSignature("test_object[accessor_sig_key];", test_object, isolate);
|
| + TestSignature("test_object.accessor_sig = 1;", test_object, isolate);
|
| + TestSignature("test_object[accessor_sig_key] = 1;", test_object, isolate);
|
| }
|
| }
|
|
|
| @@ -356,7 +357,7 @@ THREADED_TEST(HulIgennem) {
|
| v8::Isolate* isolate = env->GetIsolate();
|
| v8::HandleScope scope(isolate);
|
| v8::Handle<v8::Primitive> undef = v8::Undefined(isolate);
|
| - Local<String> undef_str = undef->ToString();
|
| + Local<String> undef_str = undef->ToString(isolate);
|
| char* value = i::NewArray<char>(undef_str->Utf8Length() + 1);
|
| undef_str->WriteUtf8(value);
|
| CHECK_EQ(0, strcmp(value, "undefined"));
|
| @@ -1233,7 +1234,8 @@ Handle<Value> TestFastReturnValues() {
|
|
|
| THREADED_PROFILED_TEST(FastReturnValues) {
|
| LocalContext env;
|
| - v8::HandleScope scope(CcTest::isolate());
|
| + v8::Isolate* isolate = env->GetIsolate();
|
| + v8::HandleScope scope(isolate);
|
| v8::Handle<v8::Value> value;
|
| // check int32_t and uint32_t
|
| int32_t int_values[] = {
|
| @@ -1258,13 +1260,13 @@ THREADED_PROFILED_TEST(FastReturnValues) {
|
| // check double
|
| value = TestFastReturnValues<double>();
|
| CHECK(value->IsNumber());
|
| - CHECK_EQ(kFastReturnValueDouble, value->ToNumber()->Value());
|
| + CHECK_EQ(kFastReturnValueDouble, value->ToNumber(isolate)->Value());
|
| // check bool values
|
| for (int i = 0; i < 2; i++) {
|
| fast_return_value_bool = i == 0;
|
| value = TestFastReturnValues<bool>();
|
| CHECK(value->IsBoolean());
|
| - CHECK_EQ(fast_return_value_bool, value->ToBoolean()->Value());
|
| + CHECK_EQ(fast_return_value_bool, value->ToBoolean(isolate)->Value());
|
| }
|
| // check oddballs
|
| ReturnValueOddball oddballs[] = {
|
| @@ -4387,13 +4389,14 @@ THREADED_TEST(ScriptException) {
|
|
|
| TEST(TryCatchCustomException) {
|
| LocalContext env;
|
| - v8::HandleScope scope(env->GetIsolate());
|
| + v8::Isolate* isolate = env->GetIsolate();
|
| + v8::HandleScope scope(isolate);
|
| v8::TryCatch try_catch;
|
| CompileRun("function CustomError() { this.a = 'b'; }"
|
| "(function f() { throw new CustomError(); })();");
|
| CHECK(try_catch.HasCaught());
|
| - CHECK(try_catch.Exception()->ToObject()->
|
| - Get(v8_str("a"))->Equals(v8_str("b")));
|
| + CHECK(try_catch.Exception()->ToObject(isolate)->Get(v8_str("a"))->Equals(
|
| + v8_str("b")));
|
| }
|
|
|
|
|
| @@ -4887,49 +4890,51 @@ static void CheckUncle(v8::TryCatch* try_catch) {
|
|
|
| THREADED_TEST(ConversionNumber) {
|
| LocalContext env;
|
| - v8::HandleScope scope(env->GetIsolate());
|
| + v8::Isolate* isolate = env->GetIsolate();
|
| + v8::HandleScope scope(isolate);
|
| // Very large number.
|
| CompileRun("var obj = Math.pow(2,32) * 1237;");
|
| Local<Value> obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(5312874545152.0, obj->ToNumber()->Value());
|
| - CHECK_EQ(0, obj->ToInt32()->Value());
|
| - CHECK(0u == obj->ToUint32()->Value()); // NOLINT - no CHECK_EQ for unsigned.
|
| + CHECK_EQ(5312874545152.0, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(0, obj->ToInt32(isolate)->Value());
|
| + CHECK(0u ==
|
| + obj->ToUint32(isolate)->Value()); // NOLINT - no CHECK_EQ for unsigned.
|
| // Large number.
|
| CompileRun("var obj = -1234567890123;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(-1234567890123.0, obj->ToNumber()->Value());
|
| - CHECK_EQ(-1912276171, obj->ToInt32()->Value());
|
| - CHECK(2382691125u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(-1234567890123.0, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(-1912276171, obj->ToInt32(isolate)->Value());
|
| + CHECK(2382691125u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| // Small positive integer.
|
| CompileRun("var obj = 42;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(42.0, obj->ToNumber()->Value());
|
| - CHECK_EQ(42, obj->ToInt32()->Value());
|
| - CHECK(42u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(42.0, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(42, obj->ToInt32(isolate)->Value());
|
| + CHECK(42u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| // Negative integer.
|
| CompileRun("var obj = -37;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(-37.0, obj->ToNumber()->Value());
|
| - CHECK_EQ(-37, obj->ToInt32()->Value());
|
| - CHECK(4294967259u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(-37.0, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(-37, obj->ToInt32(isolate)->Value());
|
| + CHECK(4294967259u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| // Positive non-int32 integer.
|
| CompileRun("var obj = 0x81234567;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(2166572391.0, obj->ToNumber()->Value());
|
| - CHECK_EQ(-2128394905, obj->ToInt32()->Value());
|
| - CHECK(2166572391u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(2166572391.0, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(-2128394905, obj->ToInt32(isolate)->Value());
|
| + CHECK(2166572391u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| // Fraction.
|
| CompileRun("var obj = 42.3;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(42.3, obj->ToNumber()->Value());
|
| - CHECK_EQ(42, obj->ToInt32()->Value());
|
| - CHECK(42u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(42.3, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(42, obj->ToInt32(isolate)->Value());
|
| + CHECK(42u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| // Large negative fraction.
|
| CompileRun("var obj = -5726623061.75;");
|
| obj = env->Global()->Get(v8_str("obj"));
|
| - CHECK_EQ(-5726623061.75, obj->ToNumber()->Value());
|
| - CHECK_EQ(-1431655765, obj->ToInt32()->Value());
|
| - CHECK(2863311531u == obj->ToUint32()->Value()); // NOLINT
|
| + CHECK_EQ(-5726623061.75, obj->ToNumber(isolate)->Value());
|
| + CHECK_EQ(-1431655765, obj->ToInt32(isolate)->Value());
|
| + CHECK(2863311531u == obj->ToUint32(isolate)->Value()); // NOLINT
|
| }
|
|
|
|
|
| @@ -4994,29 +4999,29 @@ THREADED_TEST(ConversionException) {
|
| "var obj = new TestClass();");
|
| Local<Value> obj = env->Global()->Get(v8_str("obj"));
|
|
|
| - v8::TryCatch try_catch;
|
| + v8::TryCatch try_catch(isolate);
|
|
|
| - Local<Value> to_string_result = obj->ToString();
|
| + Local<Value> to_string_result = obj->ToString(isolate);
|
| CHECK(to_string_result.IsEmpty());
|
| CheckUncle(&try_catch);
|
|
|
| - Local<Value> to_number_result = obj->ToNumber();
|
| + Local<Value> to_number_result = obj->ToNumber(isolate);
|
| CHECK(to_number_result.IsEmpty());
|
| CheckUncle(&try_catch);
|
|
|
| - Local<Value> to_integer_result = obj->ToInteger();
|
| + Local<Value> to_integer_result = obj->ToInteger(isolate);
|
| CHECK(to_integer_result.IsEmpty());
|
| CheckUncle(&try_catch);
|
|
|
| - Local<Value> to_uint32_result = obj->ToUint32();
|
| + Local<Value> to_uint32_result = obj->ToUint32(isolate);
|
| CHECK(to_uint32_result.IsEmpty());
|
| CheckUncle(&try_catch);
|
|
|
| - Local<Value> to_int32_result = obj->ToInt32();
|
| + Local<Value> to_int32_result = obj->ToInt32(isolate);
|
| CHECK(to_int32_result.IsEmpty());
|
| CheckUncle(&try_catch);
|
|
|
| - Local<Value> to_object_result = v8::Undefined(isolate)->ToObject();
|
| + Local<Value> to_object_result = v8::Undefined(isolate)->ToObject(isolate);
|
| CHECK(to_object_result.IsEmpty());
|
| CHECK(try_catch.HasCaught());
|
| try_catch.Reset();
|
| @@ -5052,7 +5057,7 @@ void CCatcher(const v8::FunctionCallbackInfo<v8::Value>& args) {
|
| }
|
| v8::HandleScope scope(args.GetIsolate());
|
| v8::TryCatch try_catch;
|
| - Local<Value> result = CompileRun(args[0]->ToString());
|
| + Local<Value> result = CompileRun(args[0]->ToString(args.GetIsolate()));
|
| CHECK(!try_catch.HasCaught() || result.IsEmpty());
|
| args.GetReturnValue().Set(try_catch.HasCaught());
|
| }
|
| @@ -6331,7 +6336,7 @@ THREADED_TEST(IndexedInterceptorUnboxedDoubleWithIndexedAccessor) {
|
| "for (x in obj) {key_count++;};"
|
| "obj;");
|
| Local<Value> result = create_unboxed_double_script->Run();
|
| - CHECK(result->ToObject()->HasRealIndexedProperty(2000));
|
| + CHECK(result->ToObject(isolate)->HasRealIndexedProperty(2000));
|
| Local<Script> key_count_check = v8_compile("key_count;");
|
| result = key_count_check->Run();
|
| CHECK_EQ(v8_num(40013), result);
|
| @@ -8918,7 +8923,7 @@ TEST(TryCatchFinallyUsingTryCatchHandler) {
|
|
|
| void CEvaluate(const v8::FunctionCallbackInfo<v8::Value>& args) {
|
| v8::HandleScope scope(args.GetIsolate());
|
| - CompileRun(args[0]->ToString());
|
| + CompileRun(args[0]->ToString(args.GetIsolate()));
|
| }
|
|
|
|
|
| @@ -9192,11 +9197,11 @@ TEST(SecurityTestGCAllowed) {
|
| CHECK(indexed_security_check_with_gc_called);
|
|
|
| named_security_check_with_gc_called = false;
|
| - CHECK(CompileRun("obj.foo")->ToString()->Equals(v8_str("1001")));
|
| + CHECK(CompileRun("obj.foo")->ToString(isolate)->Equals(v8_str("1001")));
|
| CHECK(named_security_check_with_gc_called);
|
|
|
| indexed_security_check_with_gc_called = false;
|
| - CHECK(CompileRun("obj[0]")->ToString()->Equals(v8_str("1002")));
|
| + CHECK(CompileRun("obj[0]")->ToString(isolate)->Equals(v8_str("1002")));
|
| CHECK(indexed_security_check_with_gc_called);
|
| }
|
|
|
| @@ -11057,7 +11062,7 @@ THREADED_TEST(ConstructorForObject) {
|
| "(function() { var o = new obj('tipli'); return o.a; })()");
|
| CHECK(!try_catch.HasCaught());
|
| CHECK(value->IsString());
|
| - String::Utf8Value string_value1(value->ToString());
|
| + String::Utf8Value string_value1(value->ToString(isolate));
|
| CHECK_EQ("tipli", *string_value1);
|
|
|
| Local<Value> args2[] = { v8_str("tipli") };
|
| @@ -11067,7 +11072,7 @@ THREADED_TEST(ConstructorForObject) {
|
| value = object2->Get(v8_str("a"));
|
| CHECK(!try_catch.HasCaught());
|
| CHECK(value->IsString());
|
| - String::Utf8Value string_value2(value->ToString());
|
| + String::Utf8Value string_value2(value->ToString(isolate));
|
| CHECK_EQ("tipli", *string_value2);
|
|
|
| // Call the Object's constructor with a Boolean.
|
| @@ -12863,7 +12868,7 @@ THREADED_PROFILED_TEST(InterceptorCallICFastApi_SimpleSignature_Miss3) {
|
| CHECK(try_catch.HasCaught());
|
| // TODO(verwaest): Adjust message.
|
| CHECK_EQ(v8_str("TypeError: undefined is not a function"),
|
| - try_catch.Exception()->ToString());
|
| + try_catch.Exception()->ToString(isolate));
|
| CHECK_EQ(42, context->Global()->Get(v8_str("saved_result"))->Int32Value());
|
| CHECK_GE(interceptor_call_count, 50);
|
| }
|
| @@ -12905,7 +12910,7 @@ THREADED_PROFILED_TEST(InterceptorCallICFastApi_SimpleSignature_TypeError) {
|
| "}");
|
| CHECK(try_catch.HasCaught());
|
| CHECK_EQ(v8_str("TypeError: Illegal invocation"),
|
| - try_catch.Exception()->ToString());
|
| + try_catch.Exception()->ToString(isolate));
|
| CHECK_EQ(42, context->Global()->Get(v8_str("saved_result"))->Int32Value());
|
| CHECK_GE(interceptor_call_count, 50);
|
| }
|
| @@ -13038,7 +13043,7 @@ THREADED_PROFILED_TEST(CallICFastApi_SimpleSignature_Miss2) {
|
| CHECK(try_catch.HasCaught());
|
| // TODO(verwaest): Adjust message.
|
| CHECK_EQ(v8_str("TypeError: undefined is not a function"),
|
| - try_catch.Exception()->ToString());
|
| + try_catch.Exception()->ToString(isolate));
|
| CHECK_EQ(42, context->Global()->Get(v8_str("saved_result"))->Int32Value());
|
| }
|
|
|
| @@ -13076,7 +13081,7 @@ THREADED_PROFILED_TEST(CallICFastApi_SimpleSignature_TypeError) {
|
| "}");
|
| CHECK(try_catch.HasCaught());
|
| CHECK_EQ(v8_str("TypeError: Illegal invocation"),
|
| - try_catch.Exception()->ToString());
|
| + try_catch.Exception()->ToString(isolate));
|
| CHECK_EQ(42, context->Global()->Get(v8_str("saved_result"))->Int32Value());
|
| }
|
|
|
| @@ -13663,7 +13668,7 @@ THREADED_TEST(ObjectProtoToString) {
|
|
|
| // Normal ToString call should call replaced Object.prototype.toString
|
| Local<v8::Object> instance = templ->GetFunction()->NewInstance();
|
| - Local<String> value = instance->ToString();
|
| + Local<String> value = instance->ToString(isolate);
|
| CHECK(value->IsString() && value->Equals(customized_tostring));
|
|
|
| // ObjectProtoToString should not call replace toString function.
|
| @@ -13700,7 +13705,7 @@ TEST(ObjectProtoToStringES6) {
|
|
|
| // Normal ToString call should call replaced Object.prototype.toString
|
| Local<v8::Object> instance = templ->GetFunction()->NewInstance();
|
| - Local<String> value = instance->ToString();
|
| + Local<String> value = instance->ToString(isolate);
|
| CHECK(value->IsString() && value->Equals(customized_tostring));
|
|
|
| // ObjectProtoToString should not call replace toString function.
|
| @@ -13799,8 +13804,9 @@ TEST(ObjectProtoToStringES6) {
|
|
|
|
|
| THREADED_TEST(ObjectGetConstructorName) {
|
| + v8::Isolate* isolate = CcTest::isolate();
|
| LocalContext context;
|
| - v8::HandleScope scope(context->GetIsolate());
|
| + v8::HandleScope scope(isolate);
|
| v8_compile("function Parent() {};"
|
| "function Child() {};"
|
| "Child.prototype = new Parent();"
|
| @@ -13810,16 +13816,17 @@ THREADED_TEST(ObjectGetConstructorName) {
|
| "var x = new outer.inner();")->Run();
|
|
|
| Local<v8::Value> p = context->Global()->Get(v8_str("p"));
|
| - CHECK(p->IsObject() && p->ToObject()->GetConstructorName()->Equals(
|
| - v8_str("Parent")));
|
| + CHECK(p->IsObject() &&
|
| + p->ToObject(isolate)->GetConstructorName()->Equals(v8_str("Parent")));
|
|
|
| Local<v8::Value> c = context->Global()->Get(v8_str("c"));
|
| - CHECK(c->IsObject() && c->ToObject()->GetConstructorName()->Equals(
|
| - v8_str("Child")));
|
| + CHECK(c->IsObject() &&
|
| + c->ToObject(isolate)->GetConstructorName()->Equals(v8_str("Child")));
|
|
|
| Local<v8::Value> x = context->Global()->Get(v8_str("x"));
|
| - CHECK(x->IsObject() && x->ToObject()->GetConstructorName()->Equals(
|
| - v8_str("outer.inner")));
|
| + CHECK(x->IsObject() &&
|
| + x->ToObject(isolate)->GetConstructorName()->Equals(
|
| + v8_str("outer.inner")));
|
| }
|
|
|
|
|
| @@ -14367,7 +14374,7 @@ THREADED_TEST(NestedHandleScopeAndContexts) {
|
| v8::Local<Context> env = Context::New(isolate);
|
| env->Enter();
|
| v8::Handle<Value> value = NestedScope(env);
|
| - v8::Handle<String> str(value->ToString());
|
| + v8::Handle<String> str(value->ToString(isolate));
|
| CHECK(!str.IsEmpty());
|
| env->Exit();
|
| }
|
| @@ -18802,10 +18809,11 @@ class VisitorImpl : public v8::ExternalResourceVisitor {
|
|
|
|
|
| TEST(ExternalizeOldSpaceTwoByteCons) {
|
| + v8::Isolate* isolate = CcTest::isolate();
|
| LocalContext env;
|
| - v8::HandleScope scope(env->GetIsolate());
|
| + v8::HandleScope scope(isolate);
|
| v8::Local<v8::String> cons =
|
| - CompileRun("'Romeo Montague ' + 'Juliet Capulet'")->ToString();
|
| + CompileRun("'Romeo Montague ' + 'Juliet Capulet'")->ToString(isolate);
|
| CHECK(v8::Utils::OpenHandle(*cons)->IsConsString());
|
| CcTest::heap()->CollectAllAvailableGarbage();
|
| CHECK(CcTest::heap()->old_pointer_space()->Contains(
|
| @@ -18824,10 +18832,11 @@ TEST(ExternalizeOldSpaceTwoByteCons) {
|
|
|
|
|
| TEST(ExternalizeOldSpaceOneByteCons) {
|
| + v8::Isolate* isolate = CcTest::isolate();
|
| LocalContext env;
|
| - v8::HandleScope scope(env->GetIsolate());
|
| + v8::HandleScope scope(isolate);
|
| v8::Local<v8::String> cons =
|
| - CompileRun("'Romeo Montague ' + 'Juliet Capulet'")->ToString();
|
| + CompileRun("'Romeo Montague ' + 'Juliet Capulet'")->ToString(isolate);
|
| CHECK(v8::Utils::OpenHandle(*cons)->IsConsString());
|
| CcTest::heap()->CollectAllAvailableGarbage();
|
| CHECK(CcTest::heap()->old_pointer_space()->Contains(
|
| @@ -18846,8 +18855,9 @@ TEST(ExternalizeOldSpaceOneByteCons) {
|
|
|
|
|
| TEST(VisitExternalStrings) {
|
| + v8::Isolate* isolate = CcTest::isolate();
|
| LocalContext env;
|
| - v8::HandleScope scope(env->GetIsolate());
|
| + v8::HandleScope scope(isolate);
|
| const char* string = "Some string";
|
| uint16_t* two_byte_string = AsciiToTwoByteString(string);
|
| TestResource* resource[4];
|
| @@ -18917,7 +18927,7 @@ TEST(ExternalInternalizedStringCollectedAtTearDown) {
|
| const char* s = "One string to test them all";
|
| TestOneByteResource* inscription =
|
| new TestOneByteResource(i::StrDup(s), &destroyed);
|
| - v8::Local<v8::String> ring = CompileRun("ring")->ToString();
|
| + v8::Local<v8::String> ring = CompileRun("ring")->ToString(isolate);
|
| CHECK(v8::Utils::OpenHandle(*ring)->IsInternalizedString());
|
| ring->MakeExternal(inscription);
|
| // Ring is still alive. Orcs are roaming freely across our lands.
|
| @@ -18939,7 +18949,7 @@ TEST(ExternalInternalizedStringCollectedAtGC) {
|
| const char* s = "One string to test them all";
|
| TestOneByteResource* inscription =
|
| new TestOneByteResource(i::StrDup(s), &destroyed);
|
| - v8::Local<v8::String> ring = CompileRun("ring")->ToString();
|
| + v8::Local<v8::String> ring = CompileRun("ring").As<v8::String>();
|
| CHECK(v8::Utils::OpenHandle(*ring)->IsInternalizedString());
|
| ring->MakeExternal(inscription);
|
| // Ring is still alive. Orcs are roaming freely across our lands.
|
| @@ -19078,7 +19088,7 @@ static void SpaghettiIncident(
|
| const v8::FunctionCallbackInfo<v8::Value>& args) {
|
| v8::HandleScope scope(args.GetIsolate());
|
| v8::TryCatch tc;
|
| - v8::Handle<v8::String> str(args[0]->ToString());
|
| + v8::Handle<v8::String> str(args[0]->ToString(args.GetIsolate()));
|
| USE(str);
|
| if (tc.HasCaught())
|
| tc.ReThrow();
|
| @@ -21013,7 +21023,7 @@ TEST(HasOwnProperty) {
|
| "Bar.prototype = new Foo();"
|
| "new Bar();");
|
| CHECK(value->IsObject());
|
| - Handle<Object> object = value->ToObject();
|
| + Handle<Object> object = value->ToObject(isolate);
|
| CHECK(object->Has(v8_str("foo")));
|
| CHECK(!object->HasOwnProperty(v8_str("foo")));
|
| CHECK(object->HasOwnProperty(v8_str("bar")));
|
| @@ -21263,12 +21273,11 @@ static bool BlockProtoNamedSecurityTestCallback(Local<v8::Object> global,
|
| v8::AccessType type,
|
| Local<Value> data) {
|
| // Only block read access to __proto__.
|
| - if (type == v8::ACCESS_GET &&
|
| - name->IsString() &&
|
| - name->ToString()->Length() == 9 &&
|
| - name->ToString()->Utf8Length() == 9) {
|
| + if (type == v8::ACCESS_GET && name->IsString() &&
|
| + name.As<v8::String>()->Length() == 9 &&
|
| + name.As<v8::String>()->Utf8Length() == 9) {
|
| char buffer[10];
|
| - CHECK_EQ(10, name->ToString()->WriteUtf8(buffer));
|
| + CHECK_EQ(10, name.As<v8::String>()->WriteUtf8(buffer));
|
| return strncmp(buffer, "__proto__", 9) != 0;
|
| }
|
|
|
| @@ -21315,8 +21324,7 @@ THREADED_TEST(Regress93759) {
|
| context->Global();
|
|
|
| // Global object, the prototype of proxy_object. No security checks.
|
| - Local<Object> global_object =
|
| - proxy_object->GetPrototype()->ToObject();
|
| + Local<Object> global_object = proxy_object->GetPrototype()->ToObject(isolate);
|
|
|
| // Hidden prototype without security check.
|
| Local<Object> hidden_prototype =
|
| @@ -21360,7 +21368,7 @@ THREADED_TEST(Regress93759) {
|
|
|
| Local<Value> result5 = CompileRun("Object.getPrototypeOf(hidden)");
|
| CHECK(result5->Equals(
|
| - object_with_hidden->GetPrototype()->ToObject()->GetPrototype()));
|
| + object_with_hidden->GetPrototype()->ToObject(isolate)->GetPrototype()));
|
|
|
| Local<Value> result6 = CompileRun("Object.getPrototypeOf(phidden)");
|
| CHECK(result6.IsEmpty());
|
| @@ -21396,8 +21404,8 @@ static void TestReceiver(Local<Value> expected_result,
|
| const char* code) {
|
| Local<Value> result = CompileRun(code);
|
| CHECK(result->IsObject());
|
| - CHECK(expected_receiver->Equals(result->ToObject()->Get(1)));
|
| - CHECK(expected_result->Equals(result->ToObject()->Get(0)));
|
| + CHECK(expected_receiver->Equals(result.As<v8::Object>()->Get(1)));
|
| + CHECK(expected_result->Equals(result.As<v8::Object>()->Get(0)));
|
| }
|
|
|
|
|
| @@ -21785,8 +21793,8 @@ static void DebugEventInObserver(const v8::Debug::EventDetails& event_details) {
|
| Handle<Object> exec_state = event_details.GetExecutionState();
|
| Handle<Value> break_id = exec_state->Get(v8_str("break_id"));
|
| CompileRun("function f(id) { new FrameDetails(id, 0); }");
|
| - Handle<Function> fun = Handle<Function>::Cast(
|
| - CcTest::global()->Get(v8_str("f"))->ToObject());
|
| + Handle<Function> fun =
|
| + Handle<Function>::Cast(CcTest::global()->Get(v8_str("f")));
|
| fun->Call(CcTest::global(), 1, &break_id);
|
| }
|
|
|
| @@ -22597,7 +22605,8 @@ void CatcherCallback(const v8::FunctionCallbackInfo<v8::Value>& args) {
|
|
|
|
|
| void HasOwnPropertyCallback(const v8::FunctionCallbackInfo<v8::Value>& args) {
|
| - args[0]->ToObject()->HasOwnProperty(args[1]->ToString());
|
| + args[0]->ToObject(args.GetIsolate())->HasOwnProperty(
|
| + args[1]->ToString(args.GetIsolate()));
|
| }
|
|
|
|
|
|
|