Chromium Code Reviews| Index: Source/bindings/v8/ScriptController.cpp |
| diff --git a/Source/bindings/v8/ScriptController.cpp b/Source/bindings/v8/ScriptController.cpp |
| index 199c0ca7deecb83da87def13ff925c2dbbaf4297..fa37c6ca54824fa3ca1dc9fea1f45b622989f94a 100644 |
| --- a/Source/bindings/v8/ScriptController.cpp |
| +++ b/Source/bindings/v8/ScriptController.cpp |
| @@ -153,16 +153,18 @@ v8::Local<v8::Value> ScriptController::callFunction(v8::Handle<v8::Function> fun |
| return ScriptController::callFunction(m_frame->document(), function, receiver, argc, info, m_isolate); |
| } |
| -static void resourceInfo(const v8::Handle<v8::Function> function, String& resourceName, int& lineNumber) |
| +static bool resourceInfo(const v8::Handle<v8::Function> function, String& resourceName, int& lineNumber) |
| { |
| v8::ScriptOrigin origin = function->GetScriptOrigin(); |
| if (origin.ResourceName().IsEmpty()) { |
| resourceName = "undefined"; |
| lineNumber = 1; |
| } else { |
| - resourceName = toWebCoreString(origin.ResourceName()); |
| + V8TRYCATCH_FOR_V8STRINGRESOURCE_RETURN(V8StringResource<>, stringResourceName, origin.ResourceName(), false); |
|
haraken
2013/11/15 16:23:11
Is there any code that wants to return other than
Inactive
2013/11/15 16:28:49
Yes, some call sites want to return something else
|
| + resourceName = stringResourceName; |
| lineNumber = function->GetScriptLineNumber() + 1; |
| } |
| + return true; |
| } |
| v8::Local<v8::Value> ScriptController::callFunction(ExecutionContext* context, v8::Handle<v8::Function> function, v8::Handle<v8::Object> receiver, int argc, v8::Handle<v8::Value> info[], v8::Isolate* isolate) |
| @@ -171,7 +173,8 @@ v8::Local<v8::Value> ScriptController::callFunction(ExecutionContext* context, v |
| if (InspectorInstrumentation::timelineAgentEnabled(context)) { |
| String resourceName; |
| int lineNumber; |
| - resourceInfo(function, resourceName, lineNumber); |
| + if (!resourceInfo(function, resourceName, lineNumber)) |
| + return v8::Local<v8::Value>(); |
| cookie = InspectorInstrumentation::willCallFunction(context, resourceName, lineNumber); |
| } |