Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(157)

Unified Diff: Source/bindings/core/v8/PrivateScriptRunner.cpp

Issue 1003043002: bindings: Use Maybe APIs in V8ScriptRunner (part 1) (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 5 years, 9 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: Source/bindings/core/v8/PrivateScriptRunner.cpp
diff --git a/Source/bindings/core/v8/PrivateScriptRunner.cpp b/Source/bindings/core/v8/PrivateScriptRunner.cpp
index c3df1604ff9e95f346e4bef86676efdc058b5036..fdb59522cd589bfb00afda695feea10e377e2380 100644
--- a/Source/bindings/core/v8/PrivateScriptRunner.cpp
+++ b/Source/bindings/core/v8/PrivateScriptRunner.cpp
@@ -59,17 +59,20 @@ static v8::Handle<v8::Value> compileAndRunPrivateScript(v8::Isolate* isolate, St
privateScriptControllerObject->Set(v8String(isolate, "import"), v8::FunctionTemplate::New(isolate, importFunction)->GetFunction());
}
- v8::Handle<v8::Script> script = V8ScriptRunner::compileScript(v8String(isolate, sourceString), fileName, String(), TextPosition::minimumPosition(), isolate, nullptr, nullptr, nullptr, NotSharableCrossOrigin);
- if (block.HasCaught()) {
+ v8::Local<v8::Script> script;
+ if (!V8ScriptRunner::compileScript(v8String(isolate, sourceString), fileName, String(), TextPosition::minimumPosition(), isolate, nullptr, nullptr, nullptr, NotSharableCrossOrigin).ToLocal(&script)) {
fprintf(stderr, "Private script error: Compile failed. (Class name = %s)\n", scriptClassName.utf8().data());
- dumpV8Message(block.Message());
+ if (block.HasCaught())
haraken 2015/03/13 04:31:16 Just to confirm: When a worker termination is sign
bashi 2015/03/13 05:15:20 I'm not fully confident, but I think you are right
+ dumpV8Message(block.Message());
RELEASE_ASSERT_NOT_REACHED();
}
- v8::Handle<v8::Value> result = V8ScriptRunner::runCompiledInternalScript(isolate, script);
- if (block.HasCaught()) {
- fprintf(stderr, "Private script error: installClass() failed. (Class name = %s)\n", scriptClassName.utf8().data());
- dumpV8Message(block.Message());
+ v8::Local<v8::Value> result;
+ if (!V8ScriptRunner::runCompiledInternalScript(isolate, script).ToLocal(&result)) {
+ if (block.HasCaught()) {
+ fprintf(stderr, "Private script error: installClass() failed. (Class name = %s)\n", scriptClassName.utf8().data());
+ dumpV8Message(block.Message());
+ }
RELEASE_ASSERT_NOT_REACHED();
}
return result;

Powered by Google App Engine
This is Rietveld 408576698