ScriptDebugListener* PageScriptDebugServer::getDebugListenerForContext(v8::Handle<v8::Context> context) { v8::HandleScope scope; Frame* frame = retrieveFrameWithGlobalObjectCheck(context); if (!frame) return 0; return m_listenersMap.get(frame->page()); }
ScriptDebugListener* MainThreadDebugger::getDebugListenerForContext(v8::Local<v8::Context> context) { v8::HandleScope scope(context->GetIsolate()); LocalFrame* frame = retrieveFrameWithGlobalObjectCheck(context); if (!frame) return 0; return m_listenersMap.get(frame->localFrameRoot()); }
void PageScriptDebugServer::runMessageLoopOnPause(v8::Handle<v8::Context> context) { v8::HandleScope scope; Frame* frame = retrieveFrameWithGlobalObjectCheck(context); m_pausedPage = frame->page(); // Wait for continue or step command. m_clientMessageLoop->run(m_pausedPage); // The listener may have been removed in the nested loop. if (ScriptDebugListener* listener = m_listenersMap.get(m_pausedPage)) listener->didContinue(); m_pausedPage = 0; }
void MainThreadDebugger::runMessageLoopOnPause(v8::Local<v8::Context> context) { v8::HandleScope scope(context->GetIsolate()); LocalFrame* frame = retrieveFrameWithGlobalObjectCheck(context); m_pausedFrame = frame->localFrameRoot(); // Wait for continue or step command. m_clientMessageLoop->run(m_pausedFrame); // The listener may have been removed in the nested loop. if (ScriptDebugListener* listener = m_listenersMap.get(m_pausedFrame)) listener->didContinue(); m_pausedFrame = 0; }