| Index: Source/core/inspector/V8Debugger.cpp
|
| diff --git a/Source/core/inspector/V8Debugger.cpp b/Source/core/inspector/V8Debugger.cpp
|
| index 59372770b20ba4ce78465d15ff467540f12295dd..548294997ab679d3b13a5829ec2dd2c930c584bd 100644
|
| --- a/Source/core/inspector/V8Debugger.cpp
|
| +++ b/Source/core/inspector/V8Debugger.cpp
|
| @@ -106,7 +106,7 @@ void V8Debugger::setContextDebugData(v8::Local<v8::Context> context, const Strin
|
| context->SetEmbedderData(static_cast<int>(gin::kDebugIdIndex), v8String(context->GetIsolate(), contextDebugData));
|
| }
|
|
|
| -void V8Debugger::reportCompiledScripts(const String& contextDebugDataSubstring, ScriptDebugListener* listener)
|
| +void V8Debugger::getCompiledScripts(const String& contextDebugDataSubstring, Vector<ScriptDebugListener::ParsedScript>& result)
|
| {
|
| v8::HandleScope scope(m_isolate);
|
| v8::Context::Scope contextScope(debuggerContext());
|
| @@ -120,8 +120,9 @@ void V8Debugger::reportCompiledScripts(const String& contextDebugDataSubstring,
|
| return;
|
| ASSERT(value->IsArray());
|
| v8::Local<v8::Array> scriptsArray = v8::Local<v8::Array>::Cast(value);
|
| + result.reserveCapacity(scriptsArray->Length());
|
| for (unsigned i = 0; i < scriptsArray->Length(); ++i)
|
| - dispatchDidParseSource(listener, v8::Local<v8::Object>::Cast(scriptsArray->Get(v8::Integer::New(m_isolate, i))), CompileSuccess);
|
| + result.append(createParsedScript(v8::Local<v8::Object>::Cast(scriptsArray->Get(v8::Integer::New(m_isolate, i))), CompileSuccess));
|
| }
|
|
|
| String V8Debugger::setBreakpoint(const String& sourceID, const ScriptBreakpoint& scriptBreakpoint, int* actualLineNumber, int* actualColumnNumber, bool interstatementLocation)
|
| @@ -555,7 +556,7 @@ void V8Debugger::handleV8DebugEvent(const v8::Debug::EventDetails& eventDetails)
|
| v8::Local<v8::Value> value = callDebuggerMethod("getAfterCompileScript", 1, argv).ToLocalChecked();
|
| ASSERT(value->IsObject());
|
| v8::Local<v8::Object> object = v8::Local<v8::Object>::Cast(value);
|
| - dispatchDidParseSource(listener, object, event != v8::AfterCompile ? CompileError : CompileSuccess);
|
| + listener->didParseSource(createParsedScript(object, event != v8::AfterCompile ? CompileError : CompileSuccess));
|
| } else if (event == v8::Exception) {
|
| v8::Local<v8::Object> eventData = eventDetails.GetEventData();
|
| v8::Local<v8::Value> exception = callInternalGetterFunction(eventData, "exception");
|
| @@ -607,14 +608,14 @@ void V8Debugger::handleV8PromiseEvent(ScriptDebugListener* listener, ScriptState
|
| m_executionState.Clear();
|
| }
|
|
|
| -void V8Debugger::dispatchDidParseSource(ScriptDebugListener* listener, v8::Local<v8::Object> object, CompileResult compileResult)
|
| +ScriptDebugListener::ParsedScript V8Debugger::createParsedScript(v8::Local<v8::Object> object, CompileResult compileResult)
|
| {
|
| v8::Local<v8::Value> id = object->Get(v8InternalizedString("id"));
|
| ASSERT(!id.IsEmpty() && id->IsInt32());
|
| - String sourceID = String::number(id->Int32Value());
|
|
|
| - ScriptDebugListener::Script script;
|
| - script.setURL(toCoreStringWithUndefinedOrNullCheck(object->Get(v8InternalizedString("name"))))
|
| + ScriptDebugListener::ParsedScript parsedScript;
|
| + parsedScript.scriptId = String::number(id->Int32Value());
|
| + parsedScript.script.setURL(toCoreStringWithUndefinedOrNullCheck(object->Get(v8InternalizedString("name"))))
|
| .setSourceURL(toCoreStringWithUndefinedOrNullCheck(object->Get(v8InternalizedString("sourceURL"))))
|
| .setSourceMappingURL(toCoreStringWithUndefinedOrNullCheck(object->Get(v8InternalizedString("sourceMappingURL"))))
|
| .setSource(toCoreStringWithUndefinedOrNullCheck(object->Get(v8InternalizedString("source"))))
|
| @@ -624,8 +625,8 @@ void V8Debugger::dispatchDidParseSource(ScriptDebugListener* listener, v8::Local
|
| .setEndColumn(object->Get(v8InternalizedString("endColumn"))->ToInteger(m_isolate)->Value())
|
| .setIsContentScript(object->Get(v8InternalizedString("isContentScript"))->ToBoolean(m_isolate)->Value())
|
| .setIsInternalScript(object->Get(v8InternalizedString("isInternalScript"))->ToBoolean(m_isolate)->Value());
|
| -
|
| - listener->didParseSource(sourceID, script, compileResult);
|
| + parsedScript.compileResult = compileResult;
|
| + return parsedScript;
|
| }
|
|
|
| void V8Debugger::compileDebuggerScript()
|
|
|