| OLD | NEW |
| 1 /* | 1 /* |
| 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. | 2 * Copyright (c) 2010-2011 Google Inc. All rights reserved. |
| 3 * | 3 * |
| 4 * Redistribution and use in source and binary forms, with or without | 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are | 5 * modification, are permitted provided that the following conditions are |
| 6 * met: | 6 * met: |
| 7 * | 7 * |
| 8 * * Redistributions of source code must retain the above copyright | 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. | 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above | 10 * * Redistributions in binary form must reproduce the above |
| (...skipping 95 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 106 function->Call(context, receiver, argc, info); | 106 function->Call(context, receiver, argc, info); |
| 107 // Get agent from the map again, since it could have detached during script | 107 // Get agent from the map again, since it could have detached during script |
| 108 // execution. | 108 // execution. |
| 109 if (V8DebuggerAgentImpl* agent = enabledDebuggerAgentForGroup(groupId)) | 109 if (V8DebuggerAgentImpl* agent = enabledDebuggerAgentForGroup(groupId)) |
| 110 agent->didExecuteScript(); | 110 agent->didExecuteScript(); |
| 111 return result; | 111 return result; |
| 112 } | 112 } |
| 113 | 113 |
| 114 v8::MaybeLocal<v8::Value> V8InspectorImpl::compileAndRunInternalScript( | 114 v8::MaybeLocal<v8::Value> V8InspectorImpl::compileAndRunInternalScript( |
| 115 v8::Local<v8::Context> context, v8::Local<v8::String> source) { | 115 v8::Local<v8::Context> context, v8::Local<v8::String> source) { |
| 116 v8::Local<v8::Script> script = | 116 v8::Local<v8::UnboundScript> unboundScript; |
| 117 compileScript(context, source, String16(), true); | 117 if (!v8::DebugInterface::CompileInspectorScript(m_isolate, source) |
| 118 if (script.IsEmpty()) return v8::MaybeLocal<v8::Value>(); | 118 .ToLocal(&unboundScript)) |
| 119 return v8::MaybeLocal<v8::Value>(); |
| 119 v8::MicrotasksScope microtasksScope(m_isolate, | 120 v8::MicrotasksScope microtasksScope(m_isolate, |
| 120 v8::MicrotasksScope::kDoNotRunMicrotasks); | 121 v8::MicrotasksScope::kDoNotRunMicrotasks); |
| 121 return script->Run(context); | 122 v8::Context::Scope contextScope(context); |
| 123 return unboundScript->BindToCurrentContext()->Run(context); |
| 122 } | 124 } |
| 123 | 125 |
| 124 v8::Local<v8::Script> V8InspectorImpl::compileScript( | 126 v8::MaybeLocal<v8::Script> V8InspectorImpl::compileScript( |
| 125 v8::Local<v8::Context> context, v8::Local<v8::String> code, | 127 v8::Local<v8::Context> context, const String16& code, |
| 126 const String16& fileName, bool markAsInternal) { | 128 const String16& fileName) { |
| 127 v8::ScriptOrigin origin( | 129 v8::ScriptOrigin origin( |
| 128 toV8String(m_isolate, fileName), v8::Integer::New(m_isolate, 0), | 130 toV8String(m_isolate, fileName), v8::Integer::New(m_isolate, 0), |
| 129 v8::Integer::New(m_isolate, 0), | 131 v8::Integer::New(m_isolate, 0), |
| 130 v8::False(m_isolate), // sharable | 132 v8::False(m_isolate), // sharable |
| 131 v8::Local<v8::Integer>(), | 133 v8::Local<v8::Integer>(), v8::Boolean::New(m_isolate, false), // internal |
| 132 v8::Boolean::New(m_isolate, markAsInternal), // internal | 134 toV8String(m_isolate, String16()), // sourceMap |
| 133 toV8String(m_isolate, String16()), // sourceMap | 135 v8::True(m_isolate)); // opaqueresource |
| 134 v8::True(m_isolate)); // opaqueresource | 136 v8::ScriptCompiler::Source source(toV8String(m_isolate, code), origin); |
| 135 v8::ScriptCompiler::Source source(code, origin); | 137 return v8::ScriptCompiler::Compile(context, &source, |
| 136 v8::Local<v8::Script> script; | 138 v8::ScriptCompiler::kNoCompileOptions); |
| 137 if (!v8::ScriptCompiler::Compile(context, &source, | |
| 138 v8::ScriptCompiler::kNoCompileOptions) | |
| 139 .ToLocal(&script)) | |
| 140 return v8::Local<v8::Script>(); | |
| 141 return script; | |
| 142 } | 139 } |
| 143 | 140 |
| 144 void V8InspectorImpl::enableStackCapturingIfNeeded() { | 141 void V8InspectorImpl::enableStackCapturingIfNeeded() { |
| 145 if (!m_capturingStackTracesCount) | 142 if (!m_capturingStackTracesCount) |
| 146 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, | 143 V8StackTraceImpl::setCaptureStackTraceForUncaughtExceptions(m_isolate, |
| 147 true); | 144 true); |
| 148 ++m_capturingStackTracesCount; | 145 ++m_capturingStackTracesCount; |
| 149 } | 146 } |
| 150 | 147 |
| 151 void V8InspectorImpl::disableStackCapturingIfNeeded() { | 148 void V8InspectorImpl::disableStackCapturingIfNeeded() { |
| (...skipping 216 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 368 } | 365 } |
| 369 | 366 |
| 370 V8InspectorSessionImpl* V8InspectorImpl::sessionForContextGroup( | 367 V8InspectorSessionImpl* V8InspectorImpl::sessionForContextGroup( |
| 371 int contextGroupId) { | 368 int contextGroupId) { |
| 372 if (!contextGroupId) return nullptr; | 369 if (!contextGroupId) return nullptr; |
| 373 SessionMap::iterator iter = m_sessions.find(contextGroupId); | 370 SessionMap::iterator iter = m_sessions.find(contextGroupId); |
| 374 return iter == m_sessions.end() ? nullptr : iter->second; | 371 return iter == m_sessions.end() ? nullptr : iter->second; |
| 375 } | 372 } |
| 376 | 373 |
| 377 } // namespace v8_inspector | 374 } // namespace v8_inspector |
| OLD | NEW |