Index: Source/bindings/core/v8/NPV8Object.cpp |
diff --git a/Source/bindings/core/v8/NPV8Object.cpp b/Source/bindings/core/v8/NPV8Object.cpp |
index 45b2d7a5f630c4bab055fb0fb585649b5b60c214..30472b2e9154715e148bf2a7dc438ca1beca5674 100644 |
--- a/Source/bindings/core/v8/NPV8Object.cpp |
+++ b/Source/bindings/core/v8/NPV8Object.cpp |
@@ -257,8 +257,8 @@ bool _NPN_Invoke(NPP npp, NPObject* npObject, NPIdentifier methodName, const NPV |
ExceptionCatcher exceptionCatcher; |
v8::Local<v8::Object> v8Object = v8::Local<v8::Object>::New(isolate, v8NpObject->v8Object); |
- v8::Local<v8::Value> functionObject = v8Object->Get(v8AtomicString(isolate, identifier->value.string)); |
- if (functionObject.IsEmpty() || functionObject->IsNull()) { |
+ v8::Local<v8::Value> functionObject; |
+ if (!v8Object->Get(scriptState->context(), v8AtomicString(scriptState->isolate(), identifier->value.string)).ToLocal(&functionObject) || functionObject->IsNull()) { |
NULL_TO_NPVARIANT(*result); |
return false; |
} |
@@ -397,9 +397,8 @@ bool _NPN_GetProperty(NPP npp, NPObject* npObject, NPIdentifier propertyName, NP |
ExceptionCatcher exceptionCatcher; |
v8::Local<v8::Object> obj = v8::Local<v8::Object>::New(isolate, object->v8Object); |
- v8::Local<v8::Value> v8result = obj->Get(npIdentifierToV8Identifier(isolate, propertyName)); |
- |
- if (v8result.IsEmpty()) |
+ v8::Local<v8::Value> v8result; |
+ if (!obj->Get(scriptState->context(), npIdentifierToV8Identifier(scriptState->isolate(), propertyName)).ToLocal(&v8result)) |
return false; |
convertV8ObjectToNPVariant(isolate, v8result, npObject, result); |
@@ -498,7 +497,9 @@ bool _NPN_HasMethod(NPP npp, NPObject* npObject, NPIdentifier methodName) |
ExceptionCatcher exceptionCatcher; |
v8::Local<v8::Object> obj = v8::Local<v8::Object>::New(isolate, object->v8Object); |
- v8::Local<v8::Value> prop = obj->Get(npIdentifierToV8Identifier(isolate, methodName)); |
+ v8::Local<v8::Value> prop; |
+ if (!obj->Get(scriptState->context(), npIdentifierToV8Identifier(scriptState->isolate(), methodName)).ToLocal(&prop)) |
+ return false; |
return prop->IsFunction(); |
} |
@@ -540,7 +541,7 @@ bool _NPN_Enumerate(NPP npp, NPObject* npObject, NPIdentifier** identifier, uint |
ScriptState::Scope scope(scriptState); |
ExceptionCatcher exceptionCatcher; |
- v8::Local<v8::Object> obj = v8::Local<v8::Object>::New(isolate, object->v8Object); |
+ v8::Local<v8::Object> obj = v8::Local<v8::Object>::New(scriptState->isolate(), object->v8Object); |
// FIXME: http://b/issue?id=1210340: Use a v8::Object::Keys() method when it exists, instead of evaluating javascript. |
@@ -554,15 +555,15 @@ bool _NPN_Enumerate(NPP npp, NPObject* npObject, NPIdentifier** identifier, uint |
" }" |
" return props;" |
"});"; |
- v8::Local<v8::String> source = v8AtomicString(isolate, enumeratorCode); |
+ v8::Local<v8::String> source = v8AtomicString(scriptState->isolate(), enumeratorCode); |
v8::Local<v8::Value> result; |
- if (!V8ScriptRunner::compileAndRunInternalScript(source, isolate).ToLocal(&result)) |
+ if (!V8ScriptRunner::compileAndRunInternalScript(source, scriptState->isolate()).ToLocal(&result)) |
return false; |
ASSERT(result->IsFunction()); |
v8::Local<v8::Function> enumerator = v8::Local<v8::Function>::Cast(result); |
v8::Local<v8::Value> argv[] = { obj }; |
v8::Local<v8::Value> propsObj; |
- if (!V8ScriptRunner::callInternalFunction(enumerator, v8::Local<v8::Object>::Cast(result), WTF_ARRAY_LENGTH(argv), argv, isolate).ToLocal(&propsObj)) |
+ if (!V8ScriptRunner::callInternalFunction(enumerator, v8::Local<v8::Object>::Cast(result), WTF_ARRAY_LENGTH(argv), argv, scriptState->isolate()).ToLocal(&propsObj)) |
return false; |
// Convert the results into an array of NPIdentifiers. |
@@ -570,7 +571,9 @@ bool _NPN_Enumerate(NPP npp, NPObject* npObject, NPIdentifier** identifier, uint |
*count = props->Length(); |
*identifier = static_cast<NPIdentifier*>(calloc(*count, sizeof(NPIdentifier))); |
for (uint32_t i = 0; i < *count; ++i) { |
- v8::Local<v8::Value> name = props->Get(v8::Integer::New(isolate, i)); |
+ v8::Local<v8::Value> name; |
+ if (!props->Get(scriptState->context(), v8::Integer::New(scriptState->isolate(), i)).ToLocal(&name)) |
+ return false; |
(*identifier)[i] = getStringIdentifier(v8::Local<v8::String>::Cast(name)); |
} |
return true; |
@@ -597,7 +600,7 @@ bool _NPN_Construct(NPP npp, NPObject* npObject, const NPVariant* arguments, uin |
ExceptionCatcher exceptionCatcher; |
// Lookup the constructor function. |
- v8::Local<v8::Object> ctorObj = v8::Local<v8::Object>::New(isolate, object->v8Object); |
+ v8::Local<v8::Object> ctorObj = v8::Local<v8::Object>::New(scriptState->isolate(), object->v8Object); |
if (!ctorObj->IsFunction()) |
return false; |