<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN"
"http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head><meta http-equiv="content-type" content="text/html; charset=utf-8" />
<title>[208240] trunk/Source/WebCore</title>
</head>
<body>

<style type="text/css"><!--
#msg dl.meta { border: 1px #006 solid; background: #369; padding: 6px; color: #fff; }
#msg dl.meta dt { float: left; width: 6em; font-weight: bold; }
#msg dt:after { content:':';}
#msg dl, #msg dt, #msg ul, #msg li, #header, #footer, #logmsg { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt;  }
#msg dl a { font-weight: bold}
#msg dl a:link    { color:#fc3; }
#msg dl a:active  { color:#ff0; }
#msg dl a:visited { color:#cc6; }
h3 { font-family: verdana,arial,helvetica,sans-serif; font-size: 10pt; font-weight: bold; }
#msg pre { overflow: auto; background: #ffc; border: 1px #fa0 solid; padding: 6px; }
#logmsg { background: #ffc; border: 1px #fa0 solid; padding: 1em 1em 0 1em; }
#logmsg p, #logmsg pre, #logmsg blockquote { margin: 0 0 1em 0; }
#logmsg p, #logmsg li, #logmsg dt, #logmsg dd { line-height: 14pt; }
#logmsg h1, #logmsg h2, #logmsg h3, #logmsg h4, #logmsg h5, #logmsg h6 { margin: .5em 0; }
#logmsg h1:first-child, #logmsg h2:first-child, #logmsg h3:first-child, #logmsg h4:first-child, #logmsg h5:first-child, #logmsg h6:first-child { margin-top: 0; }
#logmsg ul, #logmsg ol { padding: 0; list-style-position: inside; margin: 0 0 0 1em; }
#logmsg ul { text-indent: -1em; padding-left: 1em; }#logmsg ol { text-indent: -1.5em; padding-left: 1.5em; }
#logmsg > ul, #logmsg > ol { margin: 0 0 1em 0; }
#logmsg pre { background: #eee; padding: 1em; }
#logmsg blockquote { border: 1px solid #fa0; border-left-width: 10px; padding: 1em 1em 0 1em; background: white;}
#logmsg dl { margin: 0; }
#logmsg dt { font-weight: bold; }
#logmsg dd { margin: 0; padding: 0 0 0.5em 0; }
#logmsg dd:before { content:'\00bb';}
#logmsg table { border-spacing: 0px; border-collapse: collapse; border-top: 4px solid #fa0; border-bottom: 1px solid #fa0; background: #fff; }
#logmsg table th { text-align: left; font-weight: normal; padding: 0.2em 0.5em; border-top: 1px dotted #fa0; }
#logmsg table td { text-align: right; border-top: 1px dotted #fa0; padding: 0.2em 0.5em; }
#logmsg table thead th { text-align: center; border-bottom: 1px solid #fa0; }
#logmsg table th.Corner { text-align: left; }
#logmsg hr { border: none 0; border-top: 2px dashed #fa0; height: 1px; }
#header, #footer { color: #fff; background: #636; border: 1px #300 solid; padding: 6px; }
#patch { width: 100%; }
#patch h4 {font-family: verdana,arial,helvetica,sans-serif;font-size:10pt;padding:8px;background:#369;color:#fff;margin:0;}
#patch .propset h4, #patch .binary h4 {margin:0;}
#patch pre {padding:0;line-height:1.2em;margin:0;}
#patch .diff {width:100%;background:#eee;padding: 0 0 10px 0;overflow:auto;}
#patch .propset .diff, #patch .binary .diff  {padding:10px 0;}
#patch span {display:block;padding:0 10px;}
#patch .modfile, #patch .addfile, #patch .delfile, #patch .propset, #patch .binary, #patch .copfile {border:1px solid #ccc;margin:10px 0;}
#patch ins {background:#dfd;text-decoration:none;display:block;padding:0 10px;}
#patch del {background:#fdd;text-decoration:none;display:block;padding:0 10px;}
#patch .lines, .info {color:#888;background:#fff;}
--></style>
<div id="msg">
<dl class="meta">
<dt>Revision</dt> <dd><a href="http://trac.webkit.org/projects/webkit/changeset/208240">208240</a></dd>
<dt>Author</dt> <dd>commit-queue@webkit.org</dd>
<dt>Date</dt> <dd>2016-11-01 14:42:51 -0700 (Tue, 01 Nov 2016)</dd>
</dl>

<h3>Log Message</h3>
<pre>Web Inspector: Use more references in inspector code
https://bugs.webkit.org/show_bug.cgi?id=164283

Patch by Joseph Pecoraro &lt;pecoraro@apple.com&gt; on 2016-11-01
Reviewed by Timothy Hatcher.

(WebCore::frameForScriptExecutionContext):
(WebCore::InspectorInstrumentation::didInstallTimerImpl):
(WebCore::InspectorInstrumentation::didRemoveTimerImpl):
(WebCore::InspectorInstrumentation::willFireTimerImpl):
(WebCore::InspectorInstrumentation::didLayoutImpl):
(WebCore::InspectorInstrumentation::willPaintImpl):
(WebCore::InspectorInstrumentation::didPaintImpl):
(WebCore::InspectorInstrumentation::didCommitLoadImpl):
(WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl):
(WebCore::InspectorInstrumentation::didDispatchDOMStorageEventImpl):
(WebCore::InspectorInstrumentation::instrumentingAgentsForRenderer):
(WebCore::InspectorInstrumentation::instrumentingAgentsForPage): Deleted.
(WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope): Deleted.
* inspector/InspectorInstrumentation.h:
(WebCore::InspectorInstrumentation::frameWindowDiscarded):
(WebCore::InspectorInstrumentation::didInstallTimer):
(WebCore::InspectorInstrumentation::didRemoveTimer):
(WebCore::InspectorInstrumentation::willFireTimer):
(WebCore::InspectorInstrumentation::didLayout):
(WebCore::InspectorInstrumentation::willComposite):
(WebCore::InspectorInstrumentation::didComposite):
(WebCore::InspectorInstrumentation::willPaint):
(WebCore::InspectorInstrumentation::didPaint):
(WebCore::InspectorInstrumentation::continueAfterPingLoader):
(WebCore::InspectorInstrumentation::scriptImported):
(WebCore::InspectorInstrumentation::didCommitLoad):
(WebCore::InspectorInstrumentation::frameDocumentUpdated):
(WebCore::InspectorInstrumentation::frameStartedLoading):
(WebCore::InspectorInstrumentation::frameStoppedLoading):
(WebCore::InspectorInstrumentation::frameScheduledNavigation):
(WebCore::InspectorInstrumentation::frameClearedScheduledNavigation):
(WebCore::InspectorInstrumentation::didDispatchDOMStorageEvent):
(WebCore::InspectorInstrumentation::shouldWaitForDebuggerOnStart):
(WebCore::InspectorInstrumentation::workerStarted):
(WebCore::InspectorInstrumentation::workerTerminated):
(WebCore::InspectorInstrumentation::didHandleMemoryPressure):
(WebCore::InspectorInstrumentation::networkStateChanged):
(WebCore::InspectorInstrumentation::addMessageToConsole):
(WebCore::InspectorInstrumentation::consoleCount):
(WebCore::InspectorInstrumentation::startConsoleTiming):
(WebCore::InspectorInstrumentation::stopConsoleTiming):
(WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
(WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
(WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope):
Convert to references where possible.

* inspector/InspectorCSSAgent.cpp:
(WebCore::InspectorCSSAgent::getMatchedStylesForNode):
(WebCore::InspectorCSSAgent::buildObjectForRule):
(WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
* inspector/InspectorCSSAgent.h:
* inspector/InspectorDOMAgent.cpp:
(WebCore::InspectorDOMAgent::frameDocumentUpdated):
* inspector/InspectorDOMAgent.h:
* inspector/InspectorDOMStorageAgent.cpp:
(WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
* inspector/InspectorDOMStorageAgent.h:
* inspector/InspectorInstrumentation.cpp:
* inspector/InspectorPageAgent.cpp:
(WebCore::InspectorPageAgent::frameNavigated):
(WebCore::InspectorPageAgent::didPaint):
* inspector/InspectorPageAgent.h:
* inspector/InspectorReplayAgent.cpp:
(WebCore::InspectorReplayAgent::frameNavigated):
* inspector/InspectorReplayAgent.h:
* inspector/InspectorTimelineAgent.cpp:
(WebCore::InspectorTimelineAgent::didLayout):
(WebCore::InspectorTimelineAgent::didPaint):
* inspector/InspectorTimelineAgent.h:
Pass references through InspectorInstrumentation to the Agents.

* loader/FrameLoader.cpp:
(WebCore::FrameLoader::clear):
* page/DOMTimer.cpp:
(WebCore::DOMTimer::install):
(WebCore::DOMTimer::removeById):
(WebCore::DOMTimer::fired):
* page/DOMWindow.cpp:
(WebCore::DOMWindow::willDetachPage):
* page/Frame.cpp:
(WebCore::Frame::setDocument):
* page/FrameView.cpp:
(WebCore::FrameView::layout):
(WebCore::FrameView::willPaintContents):
(WebCore::FrameView::didPaintContents):
* page/Page.cpp:
(WebCore::networkStateChanged):
* rendering/RenderLayerBacking.cpp:
(WebCore::RenderLayerBacking::paintContents):
* replay/ReplayController.cpp:
(WebCore::ReplayController::frameNavigated):
* replay/ReplayController.h:
* storage/StorageEventDispatcher.cpp:
(WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
(WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
* workers/Worker.cpp:
(WebCore::Worker::notifyFinished):
* workers/WorkerGlobalScope.cpp:
(WebCore::WorkerGlobalScope::importScripts):
(WebCore::WorkerGlobalScope::addConsoleMessage):
(WebCore::WorkerGlobalScope::addMessage):
* workers/WorkerInspectorProxy.cpp:
(WebCore::WorkerInspectorProxy::workerStartMode):
(WebCore::WorkerInspectorProxy::workerStarted):
(WebCore::WorkerInspectorProxy::workerTerminated):
* workers/WorkerInspectorProxy.h:
* workers/WorkerMessagingProxy.cpp:
(WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
Pass references to InspectorInstrumentation.</pre>

<h3>Modified Paths</h3>
<ul>
<li><a href="#trunkSourceWebCoreChangeLog">trunk/Source/WebCore/ChangeLog</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorCSSAgentcpp">trunk/Source/WebCore/inspector/InspectorCSSAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorCSSAgenth">trunk/Source/WebCore/inspector/InspectorCSSAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorDOMAgentcpp">trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorDOMAgenth">trunk/Source/WebCore/inspector/InspectorDOMAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorDOMStorageAgentcpp">trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorDOMStorageAgenth">trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorInstrumentationcpp">trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorInstrumentationh">trunk/Source/WebCore/inspector/InspectorInstrumentation.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorPageAgentcpp">trunk/Source/WebCore/inspector/InspectorPageAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorPageAgenth">trunk/Source/WebCore/inspector/InspectorPageAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorReplayAgentcpp">trunk/Source/WebCore/inspector/InspectorReplayAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorReplayAgenth">trunk/Source/WebCore/inspector/InspectorReplayAgent.h</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorTimelineAgentcpp">trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp</a></li>
<li><a href="#trunkSourceWebCoreinspectorInspectorTimelineAgenth">trunk/Source/WebCore/inspector/InspectorTimelineAgent.h</a></li>
<li><a href="#trunkSourceWebCoreloaderFrameLoadercpp">trunk/Source/WebCore/loader/FrameLoader.cpp</a></li>
<li><a href="#trunkSourceWebCorepageDOMTimercpp">trunk/Source/WebCore/page/DOMTimer.cpp</a></li>
<li><a href="#trunkSourceWebCorepageDOMWindowcpp">trunk/Source/WebCore/page/DOMWindow.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFramecpp">trunk/Source/WebCore/page/Frame.cpp</a></li>
<li><a href="#trunkSourceWebCorepageFrameViewcpp">trunk/Source/WebCore/page/FrameView.cpp</a></li>
<li><a href="#trunkSourceWebCorepagePagecpp">trunk/Source/WebCore/page/Page.cpp</a></li>
<li><a href="#trunkSourceWebCorerenderingRenderLayerBackingcpp">trunk/Source/WebCore/rendering/RenderLayerBacking.cpp</a></li>
<li><a href="#trunkSourceWebCorereplayReplayControllercpp">trunk/Source/WebCore/replay/ReplayController.cpp</a></li>
<li><a href="#trunkSourceWebCorereplayReplayControllerh">trunk/Source/WebCore/replay/ReplayController.h</a></li>
<li><a href="#trunkSourceWebCorestorageStorageEventDispatchercpp">trunk/Source/WebCore/storage/StorageEventDispatcher.cpp</a></li>
<li><a href="#trunkSourceWebCoreworkersWorkercpp">trunk/Source/WebCore/workers/Worker.cpp</a></li>
<li><a href="#trunkSourceWebCoreworkersWorkerGlobalScopecpp">trunk/Source/WebCore/workers/WorkerGlobalScope.cpp</a></li>
<li><a href="#trunkSourceWebCoreworkersWorkerInspectorProxycpp">trunk/Source/WebCore/workers/WorkerInspectorProxy.cpp</a></li>
<li><a href="#trunkSourceWebCoreworkersWorkerInspectorProxyh">trunk/Source/WebCore/workers/WorkerInspectorProxy.h</a></li>
<li><a href="#trunkSourceWebCoreworkersWorkerMessagingProxycpp">trunk/Source/WebCore/workers/WorkerMessagingProxy.cpp</a></li>
</ul>

</div>
<div id="patch">
<h3>Diff</h3>
<a id="trunkSourceWebCoreChangeLog"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/ChangeLog (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/ChangeLog        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/ChangeLog        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -1,3 +1,120 @@
</span><ins>+2016-11-01  Joseph Pecoraro  &lt;pecoraro@apple.com&gt;
+
+        Web Inspector: Use more references in inspector code
+        https://bugs.webkit.org/show_bug.cgi?id=164283
+
+        Reviewed by Timothy Hatcher.
+
+        (WebCore::frameForScriptExecutionContext):
+        (WebCore::InspectorInstrumentation::didInstallTimerImpl):
+        (WebCore::InspectorInstrumentation::didRemoveTimerImpl):
+        (WebCore::InspectorInstrumentation::willFireTimerImpl):
+        (WebCore::InspectorInstrumentation::didLayoutImpl):
+        (WebCore::InspectorInstrumentation::willPaintImpl):
+        (WebCore::InspectorInstrumentation::didPaintImpl):
+        (WebCore::InspectorInstrumentation::didCommitLoadImpl):
+        (WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl):
+        (WebCore::InspectorInstrumentation::didDispatchDOMStorageEventImpl):
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForRenderer):
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForPage): Deleted.
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope): Deleted.
+        * inspector/InspectorInstrumentation.h:
+        (WebCore::InspectorInstrumentation::frameWindowDiscarded):
+        (WebCore::InspectorInstrumentation::didInstallTimer):
+        (WebCore::InspectorInstrumentation::didRemoveTimer):
+        (WebCore::InspectorInstrumentation::willFireTimer):
+        (WebCore::InspectorInstrumentation::didLayout):
+        (WebCore::InspectorInstrumentation::willComposite):
+        (WebCore::InspectorInstrumentation::didComposite):
+        (WebCore::InspectorInstrumentation::willPaint):
+        (WebCore::InspectorInstrumentation::didPaint):
+        (WebCore::InspectorInstrumentation::continueAfterPingLoader):
+        (WebCore::InspectorInstrumentation::scriptImported):
+        (WebCore::InspectorInstrumentation::didCommitLoad):
+        (WebCore::InspectorInstrumentation::frameDocumentUpdated):
+        (WebCore::InspectorInstrumentation::frameStartedLoading):
+        (WebCore::InspectorInstrumentation::frameStoppedLoading):
+        (WebCore::InspectorInstrumentation::frameScheduledNavigation):
+        (WebCore::InspectorInstrumentation::frameClearedScheduledNavigation):
+        (WebCore::InspectorInstrumentation::didDispatchDOMStorageEvent):
+        (WebCore::InspectorInstrumentation::shouldWaitForDebuggerOnStart):
+        (WebCore::InspectorInstrumentation::workerStarted):
+        (WebCore::InspectorInstrumentation::workerTerminated):
+        (WebCore::InspectorInstrumentation::didHandleMemoryPressure):
+        (WebCore::InspectorInstrumentation::networkStateChanged):
+        (WebCore::InspectorInstrumentation::addMessageToConsole):
+        (WebCore::InspectorInstrumentation::consoleCount):
+        (WebCore::InspectorInstrumentation::startConsoleTiming):
+        (WebCore::InspectorInstrumentation::stopConsoleTiming):
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForContext):
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForPage):
+        (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope):
+        Convert to references where possible.
+
+        * inspector/InspectorCSSAgent.cpp:
+        (WebCore::InspectorCSSAgent::getMatchedStylesForNode):
+        (WebCore::InspectorCSSAgent::buildObjectForRule):
+        (WebCore::InspectorCSSAgent::buildArrayForMatchedRuleList):
+        * inspector/InspectorCSSAgent.h:
+        * inspector/InspectorDOMAgent.cpp:
+        (WebCore::InspectorDOMAgent::frameDocumentUpdated):
+        * inspector/InspectorDOMAgent.h:
+        * inspector/InspectorDOMStorageAgent.cpp:
+        (WebCore::InspectorDOMStorageAgent::didDispatchDOMStorageEvent):
+        * inspector/InspectorDOMStorageAgent.h:
+        * inspector/InspectorInstrumentation.cpp:
+        * inspector/InspectorPageAgent.cpp:
+        (WebCore::InspectorPageAgent::frameNavigated):
+        (WebCore::InspectorPageAgent::didPaint):
+        * inspector/InspectorPageAgent.h:
+        * inspector/InspectorReplayAgent.cpp:
+        (WebCore::InspectorReplayAgent::frameNavigated):
+        * inspector/InspectorReplayAgent.h:
+        * inspector/InspectorTimelineAgent.cpp:
+        (WebCore::InspectorTimelineAgent::didLayout):
+        (WebCore::InspectorTimelineAgent::didPaint):
+        * inspector/InspectorTimelineAgent.h:
+        Pass references through InspectorInstrumentation to the Agents.
+
+        * loader/FrameLoader.cpp:
+        (WebCore::FrameLoader::clear):
+        * page/DOMTimer.cpp:
+        (WebCore::DOMTimer::install):
+        (WebCore::DOMTimer::removeById):
+        (WebCore::DOMTimer::fired):
+        * page/DOMWindow.cpp:
+        (WebCore::DOMWindow::willDetachPage):
+        * page/Frame.cpp:
+        (WebCore::Frame::setDocument):
+        * page/FrameView.cpp:
+        (WebCore::FrameView::layout):
+        (WebCore::FrameView::willPaintContents):
+        (WebCore::FrameView::didPaintContents):
+        * page/Page.cpp:
+        (WebCore::networkStateChanged):
+        * rendering/RenderLayerBacking.cpp:
+        (WebCore::RenderLayerBacking::paintContents):
+        * replay/ReplayController.cpp:
+        (WebCore::ReplayController::frameNavigated):
+        * replay/ReplayController.h:
+        * storage/StorageEventDispatcher.cpp:
+        (WebCore::StorageEventDispatcher::dispatchSessionStorageEventsToFrames):
+        (WebCore::StorageEventDispatcher::dispatchLocalStorageEventsToFrames):
+        * workers/Worker.cpp:
+        (WebCore::Worker::notifyFinished):
+        * workers/WorkerGlobalScope.cpp:
+        (WebCore::WorkerGlobalScope::importScripts):
+        (WebCore::WorkerGlobalScope::addConsoleMessage):
+        (WebCore::WorkerGlobalScope::addMessage):
+        * workers/WorkerInspectorProxy.cpp:
+        (WebCore::WorkerInspectorProxy::workerStartMode):
+        (WebCore::WorkerInspectorProxy::workerStarted):
+        (WebCore::WorkerInspectorProxy::workerTerminated):
+        * workers/WorkerInspectorProxy.h:
+        * workers/WorkerMessagingProxy.cpp:
+        (WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
+        Pass references to InspectorInstrumentation.
+
</ins><span class="cx"> 2016-11-01  Alex Christensen  &lt;achristensen@webkit.org&gt;
</span><span class="cx"> 
</span><span class="cx">         Percent-encode non-ASCII code points in hosts of URLs with unrecognized schemes
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorCSSAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorCSSAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorCSSAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorCSSAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -576,7 +576,7 @@
</span><span class="cx">     // Matched rules.
</span><span class="cx">     StyleResolver&amp; styleResolver = element-&gt;styleResolver();
</span><span class="cx">     auto matchedRules = styleResolver.pseudoStyleRulesForElement(element, elementPseudoId, StyleResolver::AllCSSRules);
</span><del>-    matchedCSSRules = buildArrayForMatchedRuleList(matchedRules, styleResolver, element, elementPseudoId);
</del><ins>+    matchedCSSRules = buildArrayForMatchedRuleList(matchedRules, styleResolver, *element, elementPseudoId);
</ins><span class="cx"> 
</span><span class="cx">     if (!originalElement-&gt;isPseudoElement()) {
</span><span class="cx">         // Pseudo elements.
</span><span class="lines">@@ -587,7 +587,7 @@
</span><span class="cx">                 if (!matchedRules.isEmpty()) {
</span><span class="cx">                     auto matches = Inspector::Protocol::CSS::PseudoIdMatches::create()
</span><span class="cx">                         .setPseudoId(static_cast&lt;int&gt;(pseudoId))
</span><del>-                        .setMatches(buildArrayForMatchedRuleList(matchedRules, styleResolver, element, pseudoId))
</del><ins>+                        .setMatches(buildArrayForMatchedRuleList(matchedRules, styleResolver, *element, pseudoId))
</ins><span class="cx">                         .release();
</span><span class="cx">                     pseudoElements-&gt;addItem(WTFMove(matches));
</span><span class="cx">                 }
</span><span class="lines">@@ -604,7 +604,7 @@
</span><span class="cx">                 StyleResolver&amp; parentStyleResolver = parentElement-&gt;styleResolver();
</span><span class="cx">                 auto parentMatchedRules = parentStyleResolver.styleRulesForElement(parentElement, StyleResolver::AllCSSRules);
</span><span class="cx">                 auto entry = Inspector::Protocol::CSS::InheritedStyleEntry::create()
</span><del>-                    .setMatchedCSSRules(buildArrayForMatchedRuleList(parentMatchedRules, styleResolver, parentElement, NOPSEUDO))
</del><ins>+                    .setMatchedCSSRules(buildArrayForMatchedRuleList(parentMatchedRules, styleResolver, *parentElement, NOPSEUDO))
</ins><span class="cx">                     .release();
</span><span class="cx">                 if (parentElement-&gt;cssomStyle() &amp;&amp; parentElement-&gt;cssomStyle()-&gt;length()) {
</span><span class="cx">                     if (InspectorStyleSheetForInlineStyle* styleSheet = asInspectorStyleSheet(parentElement))
</span><span class="lines">@@ -1009,7 +1009,7 @@
</span><span class="cx">     return Inspector::Protocol::CSS::StyleSheetOrigin::Regular;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; InspectorCSSAgent::buildObjectForRule(StyleRule* styleRule, StyleResolver&amp; styleResolver, Element* element)
</del><ins>+RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; InspectorCSSAgent::buildObjectForRule(StyleRule* styleRule, StyleResolver&amp; styleResolver, Element&amp; element)
</ins><span class="cx"> {
</span><span class="cx">     if (!styleRule)
</span><span class="cx">         return nullptr;
</span><span class="lines">@@ -1017,10 +1017,10 @@
</span><span class="cx">     // StyleRules returned by StyleResolver::styleRulesForElement lack parent pointers since that infomation is not cheaply available.
</span><span class="cx">     // Since the inspector wants to walk the parent chain, we construct the full wrappers here.
</span><span class="cx">     styleResolver.inspectorCSSOMWrappers().collectDocumentWrappers(styleResolver.document().extensionStyleSheets());
</span><del>-    styleResolver.inspectorCSSOMWrappers().collectScopeWrappers(Style::Scope::forNode(*element));
</del><ins>+    styleResolver.inspectorCSSOMWrappers().collectScopeWrappers(Style::Scope::forNode(element));
</ins><span class="cx"> 
</span><span class="cx">     // Possiblity of :host styles if this element has a shadow root.
</span><del>-    if (ShadowRoot* shadowRoot = element-&gt;shadowRoot())
</del><ins>+    if (ShadowRoot* shadowRoot = element.shadowRoot())
</ins><span class="cx">         styleResolver.inspectorCSSOMWrappers().collectScopeWrappers(shadowRoot-&gt;styleScope());
</span><span class="cx"> 
</span><span class="cx">     CSSStyleRule* cssomWrapper = styleResolver.inspectorCSSOMWrappers().getWrapperForRuleInSheets(styleRule);
</span><span class="lines">@@ -1028,7 +1028,7 @@
</span><span class="cx">         return nullptr;
</span><span class="cx"> 
</span><span class="cx">     InspectorStyleSheet* inspectorStyleSheet = bindStyleSheet(cssomWrapper-&gt;parentStyleSheet());
</span><del>-    return inspectorStyleSheet ? inspectorStyleSheet-&gt;buildObjectForRule(cssomWrapper, element) : nullptr;
</del><ins>+    return inspectorStyleSheet ? inspectorStyleSheet-&gt;buildObjectForRule(cssomWrapper, &amp;element) : nullptr;
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; InspectorCSSAgent::buildObjectForRule(CSSStyleRule* rule)
</span><span class="lines">@@ -1041,13 +1041,13 @@
</span><span class="cx">     return inspectorStyleSheet ? inspectorStyleSheet-&gt;buildObjectForRule(rule, nullptr) : nullptr;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-RefPtr&lt;Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::RuleMatch&gt;&gt; InspectorCSSAgent::buildArrayForMatchedRuleList(const Vector&lt;RefPtr&lt;StyleRule&gt;&gt;&amp; matchedRules, StyleResolver&amp; styleResolver, Element* element, PseudoId psuedoId)
</del><ins>+RefPtr&lt;Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::RuleMatch&gt;&gt; InspectorCSSAgent::buildArrayForMatchedRuleList(const Vector&lt;RefPtr&lt;StyleRule&gt;&gt;&amp; matchedRules, StyleResolver&amp; styleResolver, Element&amp; element, PseudoId psuedoId)
</ins><span class="cx"> {
</span><span class="cx">     auto result = Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::RuleMatch&gt;::create();
</span><span class="cx"> 
</span><span class="cx">     SelectorChecker::CheckingContext context(SelectorChecker::Mode::CollectingRules);
</span><del>-    context.pseudoId = psuedoId ? psuedoId : element-&gt;pseudoId();
-    SelectorChecker selectorChecker(element-&gt;document());
</del><ins>+    context.pseudoId = psuedoId ? psuedoId : element.pseudoId();
+    SelectorChecker selectorChecker(element.document());
</ins><span class="cx"> 
</span><span class="cx">     for (auto&amp; matchedRule : matchedRules) {
</span><span class="cx">         RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; ruleObject = buildObjectForRule(matchedRule.get(), styleResolver, element);
</span><span class="lines">@@ -1059,7 +1059,7 @@
</span><span class="cx">         int index = 0;
</span><span class="cx">         for (const CSSSelector* selector = selectorList.first(); selector; selector = CSSSelectorList::next(selector)) {
</span><span class="cx">             unsigned ignoredSpecificity;
</span><del>-            bool matched = selectorChecker.match(*selector, *element, context, ignoredSpecificity);
</del><ins>+            bool matched = selectorChecker.match(*selector, element, context, ignoredSpecificity);
</ins><span class="cx">             if (matched)
</span><span class="cx">                 matchingSelectors-&gt;addItem(index);
</span><span class="cx">             ++index;
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorCSSAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorCSSAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorCSSAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorCSSAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -149,9 +149,9 @@
</span><span class="cx">     InspectorStyleSheet* createInspectorStyleSheetForDocument(Document&amp;);
</span><span class="cx">     Inspector::Protocol::CSS::StyleSheetOrigin detectOrigin(CSSStyleSheet* pageStyleSheet, Document* ownerDocument);
</span><span class="cx"> 
</span><del>-    RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; buildObjectForRule(StyleRule*, StyleResolver&amp;, Element*);
</del><ins>+    RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; buildObjectForRule(StyleRule*, StyleResolver&amp;, Element&amp;);
</ins><span class="cx">     RefPtr&lt;Inspector::Protocol::CSS::CSSRule&gt; buildObjectForRule(CSSStyleRule*);
</span><del>-    RefPtr&lt;Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::RuleMatch&gt;&gt; buildArrayForMatchedRuleList(const Vector&lt;RefPtr&lt;StyleRule&gt;&gt;&amp;, StyleResolver&amp;, Element*, PseudoId);
</del><ins>+    RefPtr&lt;Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::RuleMatch&gt;&gt; buildArrayForMatchedRuleList(const Vector&lt;RefPtr&lt;StyleRule&gt;&gt;&amp;, StyleResolver&amp;, Element&amp;, PseudoId);
</ins><span class="cx">     RefPtr&lt;Inspector::Protocol::CSS::CSSStyle&gt; buildObjectForAttributesStyle(Element*);
</span><span class="cx">     RefPtr&lt;Inspector::Protocol::Array&lt;Inspector::Protocol::CSS::Region&gt;&gt; buildArrayForRegions(ErrorString&amp;, RefPtr&lt;NodeList&gt;&amp;&amp;, int documentNodeId);
</span><span class="cx">     RefPtr&lt;Inspector::Protocol::CSS::NamedFlow&gt; buildObjectForNamedFlow(ErrorString&amp;, WebKitNamedFlow*, int documentNodeId);
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorDOMAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorDOMAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -2099,15 +2099,13 @@
</span><span class="cx">     m_frontendDispatcher-&gt;customElementStateChanged(elementId, customElementState(element));
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorDOMAgent::frameDocumentUpdated(Frame* frame)
</del><ins>+void InspectorDOMAgent::frameDocumentUpdated(Frame&amp; frame)
</ins><span class="cx"> {
</span><del>-    Document* document = frame-&gt;document();
</del><ins>+    Document* document = frame.document();
</ins><span class="cx">     if (!document)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    Page* page = frame-&gt;page();
-    ASSERT(page);
-    if (frame != &amp;page-&gt;mainFrame())
</del><ins>+    if (!frame.isMainFrame())
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><span class="cx">     // Only update the main frame document, nested frame document updates are not required
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorDOMAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorDOMAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorDOMAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorDOMAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -171,7 +171,7 @@
</span><span class="cx">     void didChangeCustomElementState(Element&amp;);
</span><span class="cx">     bool handleTouchEvent(Node&amp;);
</span><span class="cx">     void didCommitLoad(Document*);
</span><del>-    void frameDocumentUpdated(Frame*);
</del><ins>+    void frameDocumentUpdated(Frame&amp;);
</ins><span class="cx">     void pseudoElementCreated(PseudoElement&amp;);
</span><span class="cx">     void pseudoElementDestroyed(PseudoElement&amp;);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorDOMStorageAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -159,7 +159,7 @@
</span><span class="cx">         .release();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorDOMStorageAgent::didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin, Page*)
</del><ins>+void InspectorDOMStorageAgent::didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin)
</ins><span class="cx"> {
</span><span class="cx">     if (!m_enabled)
</span><span class="cx">         return;
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorDOMStorageAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorDOMStorageAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -70,7 +70,7 @@
</span><span class="cx">     RefPtr&lt;Inspector::Protocol::DOMStorage::StorageId&gt; storageId(SecurityOrigin*, bool isLocalStorage);
</span><span class="cx"> 
</span><span class="cx">     // Called from InspectorInstrumentation
</span><del>-    void didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*, Page*);
</del><ins>+    void didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*);
</ins><span class="cx"> 
</span><span class="cx"> private:
</span><span class="cx">     RefPtr&lt;StorageArea&gt; findStorageArea(ErrorString&amp;, const Inspector::InspectorObject&amp;, Frame*&amp;);
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorInstrumentationcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorInstrumentation.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -32,8 +32,6 @@
</span><span class="cx"> #include &quot;config.h&quot;
</span><span class="cx"> #include &quot;InspectorInstrumentation.h&quot;
</span><span class="cx"> 
</span><del>-#include &quot;CSSRule.h&quot;
-#include &quot;CSSStyleRule.h&quot;
</del><span class="cx"> #include &quot;DOMWindow.h&quot;
</span><span class="cx"> #include &quot;DOMWrapperWorld.h&quot;
</span><span class="cx"> #include &quot;Database.h&quot;
</span><span class="lines">@@ -42,7 +40,6 @@
</span><span class="cx"> #include &quot;EventDispatcher.h&quot;
</span><span class="cx"> #include &quot;InspectorApplicationCacheAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorCSSAgent.h&quot;
</span><del>-#include &quot;InspectorController.h&quot;
</del><span class="cx"> #include &quot;InspectorDOMAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorDOMDebuggerAgent.h&quot;
</span><span class="cx"> #include &quot;InspectorDOMStorageAgent.h&quot;
</span><span class="lines">@@ -55,7 +52,6 @@
</span><span class="cx"> #include &quot;InspectorWorkerAgent.h&quot;
</span><span class="cx"> #include &quot;InstrumentingAgents.h&quot;
</span><span class="cx"> #include &quot;MainFrame.h&quot;
</span><del>-#include &quot;Page.h&quot;
</del><span class="cx"> #include &quot;PageDebuggerAgent.h&quot;
</span><span class="cx"> #include &quot;PageHeapAgent.h&quot;
</span><span class="cx"> #include &quot;PageRuntimeAgent.h&quot;
</span><span class="lines">@@ -62,11 +58,8 @@
</span><span class="cx"> #include &quot;RenderObject.h&quot;
</span><span class="cx"> #include &quot;RenderView.h&quot;
</span><span class="cx"> #include &quot;ScriptController.h&quot;
</span><del>-#include &quot;StyleResolver.h&quot;
-#include &quot;StyleRule.h&quot;
</del><span class="cx"> #include &quot;WebConsoleAgent.h&quot;
</span><del>-#include &quot;WorkerInspectorController.h&quot;
-#include &quot;XMLHttpRequest.h&quot;
</del><ins>+#include &quot;WebSocketFrame.h&quot;
</ins><span class="cx"> #include &lt;inspector/ConsoleMessage.h&gt;
</span><span class="cx"> #include &lt;inspector/ScriptArguments.h&gt;
</span><span class="cx"> #include &lt;inspector/ScriptCallStack.h&gt;
</span><span class="lines">@@ -73,11 +66,10 @@
</span><span class="cx"> #include &lt;inspector/agents/InspectorDebuggerAgent.h&gt;
</span><span class="cx"> #include &lt;runtime/ConsoleTypes.h&gt;
</span><span class="cx"> #include &lt;wtf/StdLibExtras.h&gt;
</span><del>-#include &lt;wtf/text/CString.h&gt;
</del><span class="cx"> 
</span><span class="cx"> #if ENABLE(WEB_REPLAY)
</span><span class="cx"> #include &quot;InspectorReplayAgent.h&quot;
</span><del>-#include &quot;ReplayController.h&quot; // for ReplayPosition.
</del><ins>+#include &quot;ReplayController.h&quot;
</ins><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> using namespace Inspector;
</span><span class="lines">@@ -105,6 +97,14 @@
</span><span class="cx">     return frame;
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+static Frame* frameForScriptExecutionContext(ScriptExecutionContext&amp; context)
+{
+    Frame* frame = nullptr;
+    if (is&lt;Document&gt;(context))
+        frame = downcast&lt;Document&gt;(context).frame();
+    return frame;
+}
+
</ins><span class="cx"> void InspectorInstrumentation::didClearWindowObjectInWorldImpl(InstrumentingAgents&amp; instrumentingAgents, Frame&amp; frame, DOMWrapperWorld&amp; world)
</span><span class="cx"> {
</span><span class="cx">     InspectorPageAgent* pageAgent = instrumentingAgents.inspectorPageAgent();
</span><span class="lines">@@ -320,7 +320,7 @@
</span><span class="cx">         domDebuggerAgent-&gt;willSendXMLHttpRequest(url);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didInstallTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, std::chrono::milliseconds timeout, bool singleShot, ScriptExecutionContext* context)
</del><ins>+void InspectorInstrumentation::didInstallTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, std::chrono::milliseconds timeout, bool singleShot, ScriptExecutionContext&amp; context)
</ins><span class="cx"> {
</span><span class="cx">     pauseOnNativeEventIfNeeded(instrumentingAgents, false, setTimerEventName, true);
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><span class="lines">@@ -327,7 +327,7 @@
</span><span class="cx">         timelineAgent-&gt;didInstallTimer(timerId, timeout, singleShot, frameForScriptExecutionContext(context));
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didRemoveTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, ScriptExecutionContext* context)
</del><ins>+void InspectorInstrumentation::didRemoveTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, ScriptExecutionContext&amp; context)
</ins><span class="cx"> {
</span><span class="cx">     pauseOnNativeEventIfNeeded(instrumentingAgents, false, clearTimerEventName, true);
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><span class="lines">@@ -426,7 +426,7 @@
</span><span class="cx">         pageAgent-&gt;scriptsEnabled(isEnabled);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-InspectorInstrumentationCookie InspectorInstrumentation::willFireTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, ScriptExecutionContext* context)
</del><ins>+InspectorInstrumentationCookie InspectorInstrumentation::willFireTimerImpl(InstrumentingAgents&amp; instrumentingAgents, int timerId, ScriptExecutionContext&amp; context)
</ins><span class="cx"> {
</span><span class="cx">     pauseOnNativeEventIfNeeded(instrumentingAgents, false, timerFiredEventName, false);
</span><span class="cx"> 
</span><span class="lines">@@ -463,7 +463,7 @@
</span><span class="cx">     return InspectorInstrumentationCookie(instrumentingAgents, timelineAgentId);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didLayoutImpl(const InspectorInstrumentationCookie&amp; cookie, RenderObject* root)
</del><ins>+void InspectorInstrumentation::didLayoutImpl(const InspectorInstrumentationCookie&amp; cookie, RenderObject&amp; root)
</ins><span class="cx"> {
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = retrieveTimelineAgent(cookie))
</span><span class="cx">         timelineAgent-&gt;didLayout(root);
</span><span class="lines">@@ -484,13 +484,13 @@
</span><span class="cx">         timelineAgent-&gt;didComposite();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::willPaintImpl(InstrumentingAgents&amp; instrumentingAgents, RenderObject* renderer)
</del><ins>+void InspectorInstrumentation::willPaintImpl(InstrumentingAgents&amp; instrumentingAgents, RenderObject&amp; renderer)
</ins><span class="cx"> {
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><del>-        timelineAgent-&gt;willPaint(renderer-&gt;frame());
</del><ins>+        timelineAgent-&gt;willPaint(renderer.frame());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didPaintImpl(InstrumentingAgents&amp; instrumentingAgents, RenderObject* renderer, const LayoutRect&amp; rect)
</del><ins>+void InspectorInstrumentation::didPaintImpl(InstrumentingAgents&amp; instrumentingAgents, RenderObject&amp; renderer, const LayoutRect&amp; rect)
</ins><span class="cx"> {
</span><span class="cx">     if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><span class="cx">         timelineAgent-&gt;didPaint(renderer, rect);
</span><span class="lines">@@ -724,15 +724,20 @@
</span><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didCommitLoadImpl(InstrumentingAgents&amp; instrumentingAgents, Page* page, DocumentLoader* loader)
</del><ins>+void InspectorInstrumentation::didCommitLoadImpl(InstrumentingAgents&amp; instrumentingAgents, Frame&amp; frame, DocumentLoader* loader)
</ins><span class="cx"> {
</span><span class="cx">     if (!instrumentingAgents.inspectorEnvironment().developerExtrasEnabled())
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (!page || !loader || !loader-&gt;frame())
</del><ins>+    if (!frame.page())
</ins><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    if (loader-&gt;frame()-&gt;isMainFrame()) {
</del><ins>+    if (!loader)
+        return;
+
+    ASSERT(loader-&gt;frame() == &amp;frame);
+
+    if (frame.isMainFrame()) {
</ins><span class="cx">         if (WebConsoleAgent* consoleAgent = instrumentingAgents.webConsoleAgent())
</span><span class="cx">             consoleAgent-&gt;reset();
</span><span class="cx"> 
</span><span class="lines">@@ -746,7 +751,7 @@
</span><span class="cx">             databaseAgent-&gt;clearResources();
</span><span class="cx"> 
</span><span class="cx">         if (InspectorDOMAgent* domAgent = instrumentingAgents.inspectorDOMAgent())
</span><del>-            domAgent-&gt;setDocument(page-&gt;mainFrame().document());
</del><ins>+            domAgent-&gt;setDocument(frame.document());
</ins><span class="cx"> 
</span><span class="cx">         if (InspectorLayerTreeAgent* layerTreeAgent = instrumentingAgents.inspectorLayerTreeAgent())
</span><span class="cx">             layerTreeAgent-&gt;reset();
</span><span class="lines">@@ -759,12 +764,12 @@
</span><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     if (InspectorDOMAgent* domAgent = instrumentingAgents.inspectorDOMAgent())
</span><del>-        domAgent-&gt;didCommitLoad(loader-&gt;frame()-&gt;document());
</del><ins>+        domAgent-&gt;didCommitLoad(frame.document());
</ins><span class="cx"> 
</span><span class="cx">     if (InspectorPageAgent* pageAgent = instrumentingAgents.inspectorPageAgent())
</span><del>-        pageAgent-&gt;frameNavigated(loader);
</del><ins>+        pageAgent-&gt;frameNavigated(frame);
</ins><span class="cx"> 
</span><del>-    if (loader-&gt;frame()-&gt;isMainFrame()) {
</del><ins>+    if (frame.isMainFrame()) {
</ins><span class="cx">         if (InspectorTimelineAgent* timelineAgent = instrumentingAgents.inspectorTimelineAgent())
</span><span class="cx">             timelineAgent-&gt;mainFrameNavigated();
</span><span class="cx">     }
</span><span class="lines">@@ -771,11 +776,11 @@
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(WEB_REPLAY)
</span><span class="cx">     if (InspectorReplayAgent* replayAgent = instrumentingAgents.inspectorReplayAgent())
</span><del>-        replayAgent-&gt;frameNavigated(loader);
</del><ins>+        replayAgent-&gt;frameNavigated(frame);
</ins><span class="cx"> #endif
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::frameDocumentUpdatedImpl(InstrumentingAgents&amp; instrumentingAgents, Frame* frame)
</del><ins>+void InspectorInstrumentation::frameDocumentUpdatedImpl(InstrumentingAgents&amp; instrumentingAgents, Frame&amp; frame)
</ins><span class="cx"> {
</span><span class="cx">     if (!instrumentingAgents.inspectorEnvironment().developerExtrasEnabled())
</span><span class="cx">         return;
</span><span class="lines">@@ -939,10 +944,10 @@
</span><span class="cx">         dbAgent-&gt;didOpenDatabase(WTFMove(database), domain, name, version);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorInstrumentation::didDispatchDOMStorageEventImpl(InstrumentingAgents&amp; instrumentingAgents, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin, Page* page)
</del><ins>+void InspectorInstrumentation::didDispatchDOMStorageEventImpl(InstrumentingAgents&amp; instrumentingAgents, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin)
</ins><span class="cx"> {
</span><span class="cx">     if (InspectorDOMStorageAgent* domStorageAgent = instrumentingAgents.inspectorDOMStorageAgent())
</span><del>-        domStorageAgent-&gt;didDispatchDOMStorageEvent(key, oldValue, newValue, storageType, securityOrigin, page);
</del><ins>+        domStorageAgent-&gt;didDispatchDOMStorageEvent(key, oldValue, newValue, storageType, securityOrigin);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool InspectorInstrumentation::shouldWaitForDebuggerOnStartImpl(InstrumentingAgents&amp; instrumentingAgents)
</span><span class="lines">@@ -1212,27 +1217,11 @@
</span><span class="cx">     return nullptr;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForPage(Page* page)
</del><ins>+InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForRenderer(RenderObject&amp; renderer)
</ins><span class="cx"> {
</span><del>-    return page ? &amp;instrumentingAgentsForPage(*page) : nullptr;
</del><ins>+    return instrumentingAgentsForFrame(renderer.frame());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-InstrumentingAgents&amp; InspectorInstrumentation::instrumentingAgentsForPage(Page&amp; page)
-{
-    ASSERT(isMainThread());
-    return page.inspectorController().m_instrumentingAgents.get();
-}
-
-InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForRenderer(RenderObject* renderer)
-{
-    return instrumentingAgentsForFrame(renderer-&gt;frame());
-}
-
-InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope* workerGlobalScope)
-{
-    return workerGlobalScope ? &amp;workerGlobalScope-&gt;inspectorController().m_instrumentingAgents.get() : nullptr;
-}
-
</del><span class="cx"> void InspectorInstrumentation::layerTreeDidChangeImpl(InstrumentingAgents&amp; instrumentingAgents)
</span><span class="cx"> {
</span><span class="cx">     if (InspectorLayerTreeAgent* layerTreeAgent = instrumentingAgents.inspectorLayerTreeAgent())
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorInstrumentationh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorInstrumentation.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorInstrumentation.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorInstrumentation.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -36,13 +36,14 @@
</span><span class="cx"> #include &quot;FormData.h&quot;
</span><span class="cx"> #include &quot;Frame.h&quot;
</span><span class="cx"> #include &quot;HitTestResult.h&quot;
</span><ins>+#include &quot;InspectorController.h&quot;
</ins><span class="cx"> #include &quot;InspectorInstrumentationCookie.h&quot;
</span><span class="cx"> #include &quot;MemoryPressureHandler.h&quot;
</span><ins>+#include &quot;Page.h&quot;
</ins><span class="cx"> #include &quot;ScriptExecutionContext.h&quot;
</span><span class="cx"> #include &quot;StorageArea.h&quot;
</span><del>-#include &quot;WebSocketFrame.h&quot;
</del><span class="cx"> #include &quot;WorkerGlobalScope.h&quot;
</span><del>-#include &lt;runtime/ConsoleTypes.h&gt;
</del><ins>+#include &quot;WorkerInspectorController.h&quot;
</ins><span class="cx"> #include &lt;wtf/RefPtr.h&gt;
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(WEB_REPLAY)
</span><span class="lines">@@ -51,10 +52,6 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx"> 
</span><del>-namespace Deprecated {
-class ScriptObject;
-}
-
</del><span class="cx"> namespace Inspector {
</span><span class="cx"> class ConsoleMessage;
</span><span class="cx"> class ScriptArguments;
</span><span class="lines">@@ -63,7 +60,6 @@
</span><span class="cx"> 
</span><span class="cx"> namespace WebCore {
</span><span class="cx"> 
</span><del>-class CSSRule;
</del><span class="cx"> class CachedResource;
</span><span class="cx"> class CharacterData;
</span><span class="cx"> class DOMWindow;
</span><span class="lines">@@ -71,34 +67,23 @@
</span><span class="cx"> class Database;
</span><span class="cx"> class Document;
</span><span class="cx"> class DocumentLoader;
</span><del>-class Element;
-class GraphicsContext;
</del><span class="cx"> class HTTPHeaderMap;
</span><del>-class InspectorCSSAgent;
-class InspectorCSSOMWrappers;
-class InspectorInstrumentation;
</del><span class="cx"> class InspectorTimelineAgent;
</span><span class="cx"> class InstrumentingAgents;
</span><span class="cx"> class Node;
</span><del>-class Page;
</del><span class="cx"> class PseudoElement;
</span><span class="cx"> class RenderLayer;
</span><del>-class RenderLayerBacking;
</del><span class="cx"> class RenderObject;
</span><span class="cx"> class ResourceRequest;
</span><span class="cx"> class ResourceResponse;
</span><del>-class ScriptExecutionContext;
</del><span class="cx"> class SecurityOrigin;
</span><span class="cx"> class ShadowRoot;
</span><del>-class StorageArea;
-class StyleResolver;
-class StyleRule;
</del><span class="cx"> class ThreadableLoaderClient;
</span><span class="cx"> class URL;
</span><span class="cx"> class WorkerInspectorProxy;
</span><del>-class XMLHttpRequest;
</del><span class="cx"> 
</span><span class="cx"> struct ReplayPosition;
</span><ins>+struct WebSocketFrame;
</ins><span class="cx"> 
</span><span class="cx"> #define FAST_RETURN_IF_NO_FRONTENDS(value) if (LIKELY(!hasFrontends())) return value;
</span><span class="cx"> 
</span><span class="lines">@@ -117,7 +102,7 @@
</span><span class="cx">     static void characterDataModified(Document&amp;, CharacterData&amp;);
</span><span class="cx">     static void didInvalidateStyleAttr(Document&amp;, Node&amp;);
</span><span class="cx">     static void documentDetached(Document&amp;);
</span><del>-    static void frameWindowDiscarded(Frame*, DOMWindow*);
</del><ins>+    static void frameWindowDiscarded(Frame&amp;, DOMWindow*);
</ins><span class="cx">     static void mediaQueryResultChanged(Document&amp;);
</span><span class="cx">     static void activeStyleSheetsUpdated(Document&amp;);
</span><span class="cx">     static void didPushShadowRoot(Element&amp; host, ShadowRoot&amp;);
</span><span class="lines">@@ -137,8 +122,8 @@
</span><span class="cx">     static bool forcePseudoState(const Element&amp;, CSSSelector::PseudoClassType);
</span><span class="cx"> 
</span><span class="cx">     static void willSendXMLHttpRequest(ScriptExecutionContext*, const String&amp; url);
</span><del>-    static void didInstallTimer(ScriptExecutionContext*, int timerId, std::chrono::milliseconds timeout, bool singleShot);
-    static void didRemoveTimer(ScriptExecutionContext*, int timerId);
</del><ins>+    static void didInstallTimer(ScriptExecutionContext&amp;, int timerId, std::chrono::milliseconds timeout, bool singleShot);
+    static void didRemoveTimer(ScriptExecutionContext&amp;, int timerId);
</ins><span class="cx"> 
</span><span class="cx">     static InspectorInstrumentationCookie willCallFunction(ScriptExecutionContext*, const String&amp; scriptName, int scriptLine);
</span><span class="cx">     static void didCallFunction(const InspectorInstrumentationCookie&amp;, ScriptExecutionContext*);
</span><span class="lines">@@ -151,16 +136,16 @@
</span><span class="cx">     static InspectorInstrumentationCookie willEvaluateScript(Frame&amp;, const String&amp; url, int lineNumber);
</span><span class="cx">     static void didEvaluateScript(const InspectorInstrumentationCookie&amp;, Frame&amp;);
</span><span class="cx">     static void scriptsEnabled(Page&amp;, bool isEnabled);
</span><del>-    static InspectorInstrumentationCookie willFireTimer(ScriptExecutionContext*, int timerId);
</del><ins>+    static InspectorInstrumentationCookie willFireTimer(ScriptExecutionContext&amp;, int timerId);
</ins><span class="cx">     static void didFireTimer(const InspectorInstrumentationCookie&amp;);
</span><span class="cx">     static void didInvalidateLayout(Frame&amp;);
</span><span class="cx">     static InspectorInstrumentationCookie willLayout(Frame&amp;);
</span><del>-    static void didLayout(const InspectorInstrumentationCookie&amp;, RenderObject*);
</del><ins>+    static void didLayout(const InspectorInstrumentationCookie&amp;, RenderObject&amp;);
</ins><span class="cx">     static void didScroll(Page&amp;);
</span><span class="cx">     static void willComposite(Frame&amp;);
</span><span class="cx">     static void didComposite(Frame&amp;);
</span><del>-    static void willPaint(RenderObject*);
-    static void didPaint(RenderObject*, const LayoutRect&amp;);
</del><ins>+    static void willPaint(RenderObject&amp;);
+    static void didPaint(RenderObject&amp;, const LayoutRect&amp;);
</ins><span class="cx">     static InspectorInstrumentationCookie willRecalculateStyle(Document&amp;);
</span><span class="cx">     static void didRecalculateStyle(const InspectorInstrumentationCookie&amp;);
</span><span class="cx">     static void didScheduleStyleRecalculation(Document&amp;);
</span><span class="lines">@@ -182,7 +167,7 @@
</span><span class="cx">     static void didReceiveXHRResponse(ScriptExecutionContext*, unsigned long identifier);
</span><span class="cx">     static void willLoadXHRSynchronously(ScriptExecutionContext*);
</span><span class="cx">     static void didLoadXHRSynchronously(ScriptExecutionContext*);
</span><del>-    static void scriptImported(ScriptExecutionContext*, unsigned long identifier, const String&amp; sourceString);
</del><ins>+    static void scriptImported(ScriptExecutionContext&amp;, unsigned long identifier, const String&amp; sourceString);
</ins><span class="cx">     static void scriptExecutionBlockedByCSP(ScriptExecutionContext*, const String&amp; directiveText);
</span><span class="cx">     static void didReceiveScriptResponse(ScriptExecutionContext*, unsigned long identifier);
</span><span class="cx">     static void domContentLoadedEventFired(Frame&amp;);
</span><span class="lines">@@ -189,7 +174,7 @@
</span><span class="cx">     static void loadEventFired(Frame*);
</span><span class="cx">     static void frameDetachedFromParent(Frame&amp;);
</span><span class="cx">     static void didCommitLoad(Frame&amp;, DocumentLoader*);
</span><del>-    static void frameDocumentUpdated(Frame*);
</del><ins>+    static void frameDocumentUpdated(Frame&amp;);
</ins><span class="cx">     static void loaderDetachedFromFrame(Frame&amp;, DocumentLoader&amp;);
</span><span class="cx">     static void frameStartedLoading(Frame&amp;);
</span><span class="cx">     static void frameStoppedLoading(Frame&amp;);
</span><span class="lines">@@ -200,7 +185,7 @@
</span><span class="cx">     static void willDestroyCachedResource(CachedResource&amp;);
</span><span class="cx"> 
</span><span class="cx">     static void addMessageToConsole(Page&amp;, std::unique_ptr&lt;Inspector::ConsoleMessage&gt;);
</span><del>-    static void addMessageToConsole(WorkerGlobalScope*, std::unique_ptr&lt;Inspector::ConsoleMessage&gt;);
</del><ins>+    static void addMessageToConsole(WorkerGlobalScope&amp;, std::unique_ptr&lt;Inspector::ConsoleMessage&gt;);
</ins><span class="cx"> 
</span><span class="cx">     static void consoleCount(Page&amp;, JSC::ExecState*, RefPtr&lt;Inspector::ScriptArguments&gt;&amp;&amp;);
</span><span class="cx">     static void consoleCount(WorkerGlobalScope&amp;, JSC::ExecState*, RefPtr&lt;Inspector::ScriptArguments&gt;&amp;&amp;);
</span><span class="lines">@@ -220,11 +205,11 @@
</span><span class="cx"> 
</span><span class="cx">     static void didOpenDatabase(ScriptExecutionContext*, RefPtr&lt;Database&gt;&amp;&amp;, const String&amp; domain, const String&amp; name, const String&amp; version);
</span><span class="cx"> 
</span><del>-    static void didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*, Page*);
</del><ins>+    static void didDispatchDOMStorageEvent(Page&amp;, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*);
</ins><span class="cx"> 
</span><del>-    static bool shouldWaitForDebuggerOnStart(ScriptExecutionContext*);
-    static void workerStarted(ScriptExecutionContext*, WorkerInspectorProxy*, const URL&amp;);
-    static void workerTerminated(ScriptExecutionContext*, WorkerInspectorProxy*);
</del><ins>+    static bool shouldWaitForDebuggerOnStart(ScriptExecutionContext&amp;);
+    static void workerStarted(ScriptExecutionContext&amp;, WorkerInspectorProxy*, const URL&amp;);
+    static void workerTerminated(ScriptExecutionContext&amp;, WorkerInspectorProxy*);
</ins><span class="cx"> 
</span><span class="cx"> #if ENABLE(WEB_REPLAY)
</span><span class="cx">     static void sessionCreated(Page&amp;, RefPtr&lt;ReplaySession&gt;&amp;&amp;);
</span><span class="lines">@@ -259,7 +244,7 @@
</span><span class="cx">     static void didHandleMemoryPressure(Page&amp;, Critical);
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-    static void networkStateChanged(Page*);
</del><ins>+    static void networkStateChanged(Page&amp;);
</ins><span class="cx">     static void updateApplicationCacheStatus(Frame*);
</span><span class="cx"> 
</span><span class="cx">     static void layerTreeDidChange(Page*);
</span><span class="lines">@@ -311,8 +296,8 @@
</span><span class="cx">     static bool forcePseudoStateImpl(InstrumentingAgents&amp;, const Element&amp;, CSSSelector::PseudoClassType);
</span><span class="cx"> 
</span><span class="cx">     static void willSendXMLHttpRequestImpl(InstrumentingAgents&amp;, const String&amp; url);
</span><del>-    static void didInstallTimerImpl(InstrumentingAgents&amp;, int timerId, std::chrono::milliseconds timeout, bool singleShot, ScriptExecutionContext*);
-    static void didRemoveTimerImpl(InstrumentingAgents&amp;, int timerId, ScriptExecutionContext*);
</del><ins>+    static void didInstallTimerImpl(InstrumentingAgents&amp;, int timerId, std::chrono::milliseconds timeout, bool singleShot, ScriptExecutionContext&amp;);
+    static void didRemoveTimerImpl(InstrumentingAgents&amp;, int timerId, ScriptExecutionContext&amp;);
</ins><span class="cx"> 
</span><span class="cx">     static InspectorInstrumentationCookie willCallFunctionImpl(InstrumentingAgents&amp;, const String&amp; scriptName, int scriptLine, ScriptExecutionContext*);
</span><span class="cx">     static void didCallFunctionImpl(const InspectorInstrumentationCookie&amp;, ScriptExecutionContext*);
</span><span class="lines">@@ -325,16 +310,16 @@
</span><span class="cx">     static InspectorInstrumentationCookie willEvaluateScriptImpl(InstrumentingAgents&amp;, Frame&amp;, const String&amp; url, int lineNumber);
</span><span class="cx">     static void didEvaluateScriptImpl(const InspectorInstrumentationCookie&amp;, Frame&amp;);
</span><span class="cx">     static void scriptsEnabledImpl(InstrumentingAgents&amp;, bool isEnabled);
</span><del>-    static InspectorInstrumentationCookie willFireTimerImpl(InstrumentingAgents&amp;, int timerId, ScriptExecutionContext*);
</del><ins>+    static InspectorInstrumentationCookie willFireTimerImpl(InstrumentingAgents&amp;, int timerId, ScriptExecutionContext&amp;);
</ins><span class="cx">     static void didFireTimerImpl(const InspectorInstrumentationCookie&amp;);
</span><span class="cx">     static void didInvalidateLayoutImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><span class="cx">     static InspectorInstrumentationCookie willLayoutImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><del>-    static void didLayoutImpl(const InspectorInstrumentationCookie&amp;, RenderObject*);
</del><ins>+    static void didLayoutImpl(const InspectorInstrumentationCookie&amp;, RenderObject&amp;);
</ins><span class="cx">     static void didScrollImpl(InstrumentingAgents&amp;);
</span><span class="cx">     static void willCompositeImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><span class="cx">     static void didCompositeImpl(InstrumentingAgents&amp;);
</span><del>-    static void willPaintImpl(InstrumentingAgents&amp;, RenderObject*);
-    static void didPaintImpl(InstrumentingAgents&amp;, RenderObject*, const LayoutRect&amp;);
</del><ins>+    static void willPaintImpl(InstrumentingAgents&amp;, RenderObject&amp;);
+    static void didPaintImpl(InstrumentingAgents&amp;, RenderObject&amp;, const LayoutRect&amp;);
</ins><span class="cx">     static InspectorInstrumentationCookie willRecalculateStyleImpl(InstrumentingAgents&amp;, Document&amp;);
</span><span class="cx">     static void didRecalculateStyleImpl(const InspectorInstrumentationCookie&amp;);
</span><span class="cx">     static void didScheduleStyleRecalculationImpl(InstrumentingAgents&amp;, Document&amp;);
</span><span class="lines">@@ -365,8 +350,8 @@
</span><span class="cx">     static void domContentLoadedEventFiredImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><span class="cx">     static void loadEventFiredImpl(InstrumentingAgents&amp;, Frame*);
</span><span class="cx">     static void frameDetachedFromParentImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><del>-    static void didCommitLoadImpl(InstrumentingAgents&amp;, Page*, DocumentLoader*);
-    static void frameDocumentUpdatedImpl(InstrumentingAgents&amp;, Frame*);
</del><ins>+    static void didCommitLoadImpl(InstrumentingAgents&amp;, Frame&amp;, DocumentLoader*);
+    static void frameDocumentUpdatedImpl(InstrumentingAgents&amp;, Frame&amp;);
</ins><span class="cx">     static void loaderDetachedFromFrameImpl(InstrumentingAgents&amp;, DocumentLoader&amp;);
</span><span class="cx">     static void frameStartedLoadingImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><span class="cx">     static void frameStoppedLoadingImpl(InstrumentingAgents&amp;, Frame&amp;);
</span><span class="lines">@@ -396,7 +381,7 @@
</span><span class="cx"> 
</span><span class="cx">     static void didOpenDatabaseImpl(InstrumentingAgents&amp;, RefPtr&lt;Database&gt;&amp;&amp;, const String&amp; domain, const String&amp; name, const String&amp; version);
</span><span class="cx"> 
</span><del>-    static void didDispatchDOMStorageEventImpl(InstrumentingAgents&amp;, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*, Page*);
</del><ins>+    static void didDispatchDOMStorageEventImpl(InstrumentingAgents&amp;, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType, SecurityOrigin*);
</ins><span class="cx"> 
</span><span class="cx">     static bool shouldWaitForDebuggerOnStartImpl(InstrumentingAgents&amp;);
</span><span class="cx">     static void workerStartedImpl(InstrumentingAgents&amp;, WorkerInspectorProxy*, const URL&amp;);
</span><span class="lines">@@ -442,12 +427,15 @@
</span><span class="cx">     static void renderLayerDestroyedImpl(InstrumentingAgents&amp;, const RenderLayer&amp;);
</span><span class="cx"> 
</span><span class="cx">     static InstrumentingAgents&amp; instrumentingAgentsForPage(Page&amp;);
</span><ins>+    static InstrumentingAgents&amp; instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope&amp;);
+
</ins><span class="cx">     static InstrumentingAgents* instrumentingAgentsForFrame(Frame&amp;);
</span><span class="cx">     static InstrumentingAgents* instrumentingAgentsForFrame(Frame*);
</span><span class="cx">     static InstrumentingAgents* instrumentingAgentsForContext(ScriptExecutionContext*);
</span><ins>+    static InstrumentingAgents* instrumentingAgentsForContext(ScriptExecutionContext&amp;);
</ins><span class="cx">     static InstrumentingAgents* instrumentingAgentsForDocument(Document&amp;);
</span><span class="cx">     static InstrumentingAgents* instrumentingAgentsForDocument(Document*);
</span><del>-    static InstrumentingAgents* instrumentingAgentsForRenderer(RenderObject*);
</del><ins>+    static InstrumentingAgents* instrumentingAgentsForRenderer(RenderObject&amp;);
</ins><span class="cx">     static InstrumentingAgents* instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope*);
</span><span class="cx"> 
</span><span class="cx">     static InspectorTimelineAgent* retrieveTimelineAgent(const InspectorInstrumentationCookie&amp;);
</span><span class="lines">@@ -535,7 +523,7 @@
</span><span class="cx">         documentDetachedImpl(*instrumentingAgents, document);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::frameWindowDiscarded(Frame* frame, DOMWindow* domWindow)
</del><ins>+inline void InspectorInstrumentation::frameWindowDiscarded(Frame&amp; frame, DOMWindow* domWindow)
</ins><span class="cx"> {
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</span><span class="cx">         frameWindowDiscardedImpl(*instrumentingAgents, domWindow);
</span><span class="lines">@@ -669,7 +657,7 @@
</span><span class="cx">         willSendXMLHttpRequestImpl(*instrumentingAgents, url);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::didInstallTimer(ScriptExecutionContext* context, int timerId, std::chrono::milliseconds timeout, bool singleShot)
</del><ins>+inline void InspectorInstrumentation::didInstallTimer(ScriptExecutionContext&amp; context, int timerId, std::chrono::milliseconds timeout, bool singleShot)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -676,7 +664,7 @@
</span><span class="cx">         didInstallTimerImpl(*instrumentingAgents, timerId, timeout, singleShot, context);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::didRemoveTimer(ScriptExecutionContext* context, int timerId)
</del><ins>+inline void InspectorInstrumentation::didRemoveTimer(ScriptExecutionContext&amp; context, int timerId)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -691,7 +679,6 @@
</span><span class="cx">     return InspectorInstrumentationCookie();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-
</del><span class="cx"> inline void InspectorInstrumentation::didCallFunction(const InspectorInstrumentationCookie&amp; cookie, ScriptExecutionContext* context)
</span><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="lines">@@ -765,7 +752,7 @@
</span><span class="cx">     return scriptsEnabledImpl(instrumentingAgentsForPage(page), isEnabled);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline InspectorInstrumentationCookie InspectorInstrumentation::willFireTimer(ScriptExecutionContext* context, int timerId)
</del><ins>+inline InspectorInstrumentationCookie InspectorInstrumentation::willFireTimer(ScriptExecutionContext&amp; context, int timerId)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(InspectorInstrumentationCookie());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -795,7 +782,7 @@
</span><span class="cx">     return InspectorInstrumentationCookie();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::didLayout(const InspectorInstrumentationCookie&amp; cookie, RenderObject* root)
</del><ins>+inline void InspectorInstrumentation::didLayout(const InspectorInstrumentationCookie&amp; cookie, RenderObject&amp; root)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (cookie.isValid())
</span><span class="lines">@@ -811,7 +798,7 @@
</span><span class="cx"> inline void InspectorInstrumentation::willComposite(Frame&amp; frame)
</span><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         willCompositeImpl(*instrumentingAgents, frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -818,11 +805,11 @@
</span><span class="cx"> inline void InspectorInstrumentation::didComposite(Frame&amp; frame)
</span><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         didCompositeImpl(*instrumentingAgents);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::willPaint(RenderObject* renderer)
</del><ins>+inline void InspectorInstrumentation::willPaint(RenderObject&amp; renderer)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForRenderer(renderer))
</span><span class="lines">@@ -829,7 +816,7 @@
</span><span class="cx">         return willPaintImpl(*instrumentingAgents, renderer);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::didPaint(RenderObject* renderer, const LayoutRect&amp; rect)
</del><ins>+inline void InspectorInstrumentation::didPaint(RenderObject&amp; renderer, const LayoutRect&amp; rect)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForRenderer(renderer))
</span><span class="lines">@@ -873,7 +860,7 @@
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::continueAfterPingLoader(Frame&amp; frame, unsigned long identifier, DocumentLoader* loader, ResourceRequest&amp; request, const ResourceResponse&amp; response)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         InspectorInstrumentation::continueAfterPingLoaderImpl(*instrumentingAgents, identifier, loader, request, response);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -961,7 +948,7 @@
</span><span class="cx">         didLoadXHRSynchronouslyImpl(*instrumentingAgents);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::scriptImported(ScriptExecutionContext* context, unsigned long identifier, const String&amp; sourceString)
</del><ins>+inline void InspectorInstrumentation::scriptImported(ScriptExecutionContext&amp; context, unsigned long identifier, const String&amp; sourceString)
</ins><span class="cx"> {
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="cx">         scriptImportedImpl(*instrumentingAgents, identifier, sourceString);
</span><span class="lines">@@ -1000,10 +987,10 @@
</span><span class="cx"> inline void InspectorInstrumentation::didCommitLoad(Frame&amp; frame, DocumentLoader* loader)
</span><span class="cx"> {
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</span><del>-        didCommitLoadImpl(*instrumentingAgents, frame.page(), loader);
</del><ins>+        didCommitLoadImpl(*instrumentingAgents, frame, loader);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::frameDocumentUpdated(Frame* frame)
</del><ins>+inline void InspectorInstrumentation::frameDocumentUpdated(Frame&amp; frame)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</span><span class="lines">@@ -1018,25 +1005,25 @@
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::frameStartedLoading(Frame&amp; frame)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         frameStartedLoadingImpl(*instrumentingAgents, frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::frameStoppedLoading(Frame&amp; frame)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         frameStoppedLoadingImpl(*instrumentingAgents, frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::frameScheduledNavigation(Frame&amp; frame, double delay)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         frameScheduledNavigationImpl(*instrumentingAgents, frame, delay);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::frameClearedScheduledNavigation(Frame&amp; frame)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(&amp;frame))
</del><ins>+    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForFrame(frame))
</ins><span class="cx">         frameClearedScheduledNavigationImpl(*instrumentingAgents, frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1065,14 +1052,13 @@
</span><span class="cx">         didOpenDatabaseImpl(*instrumentingAgents, WTFMove(database), domain, name, version);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::didDispatchDOMStorageEvent(const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin, Page* page)
</del><ins>+inline void InspectorInstrumentation::didDispatchDOMStorageEvent(Page&amp; page, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, StorageType storageType, SecurityOrigin* securityOrigin)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForPage(page))
-        didDispatchDOMStorageEventImpl(*instrumentingAgents, key, oldValue, newValue, storageType, securityOrigin, page);
</del><ins>+    didDispatchDOMStorageEventImpl(instrumentingAgentsForPage(page), key, oldValue, newValue, storageType, securityOrigin);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline bool InspectorInstrumentation::shouldWaitForDebuggerOnStart(ScriptExecutionContext* context)
</del><ins>+inline bool InspectorInstrumentation::shouldWaitForDebuggerOnStart(ScriptExecutionContext&amp; context)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(false);
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -1080,7 +1066,7 @@
</span><span class="cx">     return false;
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::workerStarted(ScriptExecutionContext* context, WorkerInspectorProxy* proxy, const URL&amp; url)
</del><ins>+inline void InspectorInstrumentation::workerStarted(ScriptExecutionContext&amp; context, WorkerInspectorProxy* proxy, const URL&amp; url)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -1087,7 +1073,7 @@
</span><span class="cx">         workerStartedImpl(*instrumentingAgents, proxy, url);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::workerTerminated(ScriptExecutionContext* context, WorkerInspectorProxy* proxy)
</del><ins>+inline void InspectorInstrumentation::workerTerminated(ScriptExecutionContext&amp; context, WorkerInspectorProxy* proxy)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><span class="cx">     if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForContext(context))
</span><span class="lines">@@ -1229,16 +1215,14 @@
</span><span class="cx"> inline void InspectorInstrumentation::didHandleMemoryPressure(Page&amp; page, Critical critical)
</span><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForPage(&amp;page))
-        didHandleMemoryPressureImpl(*instrumentingAgents, critical);
</del><ins>+    didHandleMemoryPressureImpl(instrumentingAgentsForPage(page), critical);
</ins><span class="cx"> }
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::networkStateChanged(Page* page)
</del><ins>+inline void InspectorInstrumentation::networkStateChanged(Page&amp; page)
</ins><span class="cx"> {
</span><span class="cx">     FAST_RETURN_IF_NO_FRONTENDS(void());
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForPage(page))
-        networkStateChangedImpl(*instrumentingAgents);
</del><ins>+    networkStateChangedImpl(instrumentingAgentsForPage(page));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::updateApplicationCacheStatus(Frame* frame)
</span><span class="lines">@@ -1253,10 +1237,9 @@
</span><span class="cx">     addMessageToConsoleImpl(instrumentingAgentsForPage(page), WTFMove(message));
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-inline void InspectorInstrumentation::addMessageToConsole(WorkerGlobalScope* workerGlobalScope, std::unique_ptr&lt;Inspector::ConsoleMessage&gt; message)
</del><ins>+inline void InspectorInstrumentation::addMessageToConsole(WorkerGlobalScope&amp; workerGlobalScope, std::unique_ptr&lt;Inspector::ConsoleMessage&gt; message)
</ins><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForWorkerGlobalScope(workerGlobalScope))
-        addMessageToConsoleImpl(*instrumentingAgents, WTFMove(message));
</del><ins>+    addMessageToConsoleImpl(instrumentingAgentsForWorkerGlobalScope(workerGlobalScope), WTFMove(message));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::consoleCount(Page&amp; page, JSC::ExecState* state, RefPtr&lt;Inspector::ScriptArguments&gt;&amp;&amp; arguments)
</span><span class="lines">@@ -1266,8 +1249,7 @@
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::consoleCount(WorkerGlobalScope&amp; workerGlobalScope, JSC::ExecState* state, RefPtr&lt;Inspector::ScriptArguments&gt;&amp;&amp; arguments)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForWorkerGlobalScope(&amp;workerGlobalScope))
-        consoleCountImpl(*instrumentingAgents, state, WTFMove(arguments));
</del><ins>+    consoleCountImpl(instrumentingAgentsForWorkerGlobalScope(workerGlobalScope), state, WTFMove(arguments));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::takeHeapSnapshot(Frame&amp; frame, const String&amp; title)
</span><span class="lines">@@ -1285,8 +1267,7 @@
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::startConsoleTiming(WorkerGlobalScope&amp; workerGlobalScope, const String&amp; title)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForWorkerGlobalScope(&amp;workerGlobalScope))
-        startConsoleTimingImpl(*instrumentingAgents, title);
</del><ins>+    startConsoleTimingImpl(instrumentingAgentsForWorkerGlobalScope(workerGlobalScope), title);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::stopConsoleTiming(Frame&amp; frame, const String&amp; title, RefPtr&lt;Inspector::ScriptCallStack&gt;&amp;&amp; stack)
</span><span class="lines">@@ -1297,8 +1278,7 @@
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::stopConsoleTiming(WorkerGlobalScope&amp; workerGlobalScope, const String&amp; title, RefPtr&lt;Inspector::ScriptCallStack&gt;&amp;&amp; stack)
</span><span class="cx"> {
</span><del>-    if (InstrumentingAgents* instrumentingAgents = instrumentingAgentsForWorkerGlobalScope(&amp;workerGlobalScope))
-        stopConsoleTimingImpl(*instrumentingAgents, title, WTFMove(stack));
</del><ins>+    stopConsoleTimingImpl(instrumentingAgentsForWorkerGlobalScope(workerGlobalScope), title, WTFMove(stack));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> inline void InspectorInstrumentation::consoleTimeStamp(Frame&amp; frame, RefPtr&lt;Inspector::ScriptArguments&gt;&amp;&amp; arguments)
</span><span class="lines">@@ -1360,12 +1340,15 @@
</span><span class="cx"> 
</span><span class="cx"> inline InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForContext(ScriptExecutionContext* context)
</span><span class="cx"> {
</span><del>-    if (!context)
-        return nullptr;
-    if (is&lt;Document&gt;(*context))
-        return instrumentingAgentsForPage(downcast&lt;Document&gt;(context)-&gt;page());
-    if (is&lt;WorkerGlobalScope&gt;(*context))
-        return instrumentingAgentsForWorkerGlobalScope(downcast&lt;WorkerGlobalScope&gt;(context));
</del><ins>+    return context ? instrumentingAgentsForContext(*context) : nullptr;
+}
+
+inline InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForContext(ScriptExecutionContext&amp; context)
+{
+    if (is&lt;Document&gt;(context))
+        return instrumentingAgentsForPage(downcast&lt;Document&gt;(context).page());
+    if (is&lt;WorkerGlobalScope&gt;(context))
+        return &amp;instrumentingAgentsForWorkerGlobalScope(downcast&lt;WorkerGlobalScope&gt;(context));
</ins><span class="cx">     return nullptr;
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -1392,4 +1375,25 @@
</span><span class="cx">     return instrumentingAgentsForPage(page);
</span><span class="cx"> }
</span><span class="cx"> 
</span><ins>+inline InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForPage(Page* page)
+{
+    return page ? &amp;instrumentingAgentsForPage(*page) : nullptr;
+}
+
+inline InstrumentingAgents&amp; InspectorInstrumentation::instrumentingAgentsForPage(Page&amp; page)
+{
+    ASSERT(isMainThread());
+    return page.inspectorController().m_instrumentingAgents.get();
+}
+
+inline InstrumentingAgents* InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope* workerGlobalScope)
+{
+    return workerGlobalScope ? &amp;instrumentingAgentsForWorkerGlobalScope(*workerGlobalScope) : nullptr;
+}
+
+inline InstrumentingAgents&amp; InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope(WorkerGlobalScope&amp; workerGlobalScope)
+{
+    return workerGlobalScope.inspectorController().m_instrumentingAgents;
+}
+
</ins><span class="cx"> } // namespace WebCore
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorPageAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorPageAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorPageAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorPageAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -738,13 +738,13 @@
</span><span class="cx">     m_frontendDispatcher-&gt;loadEventFired(timestamp());
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorPageAgent::frameNavigated(DocumentLoader* loader)
</del><ins>+void InspectorPageAgent::frameNavigated(Frame&amp; frame)
</ins><span class="cx"> {
</span><del>-    if (loader-&gt;frame()-&gt;isMainFrame()) {
</del><ins>+    if (frame.isMainFrame()) {
</ins><span class="cx">         m_scriptToEvaluateOnLoadOnce = m_pendingScriptToEvaluateOnLoadOnce;
</span><span class="cx">         m_pendingScriptToEvaluateOnLoadOnce = String();
</span><span class="cx">     }
</span><del>-    m_frontendDispatcher-&gt;frameNavigated(buildObjectForFrame(loader-&gt;frame()));
</del><ins>+    m_frontendDispatcher-&gt;frameNavigated(buildObjectForFrame(&amp;frame));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorPageAgent::frameDetached(Frame&amp; frame)
</span><span class="lines">@@ -860,13 +860,13 @@
</span><span class="cx">     m_frontendDispatcher-&gt;javascriptDialogClosed();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorPageAgent::didPaint(RenderObject* renderer, const LayoutRect&amp; rect)
</del><ins>+void InspectorPageAgent::didPaint(RenderObject&amp; renderer, const LayoutRect&amp; rect)
</ins><span class="cx"> {
</span><span class="cx">     if (!m_enabled || !m_showPaintRects)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    LayoutRect absoluteRect = LayoutRect(renderer-&gt;localToAbsoluteQuad(FloatRect(rect)).boundingBox());
-    FrameView* view = renderer-&gt;document().view();
</del><ins>+    LayoutRect absoluteRect = LayoutRect(renderer.localToAbsoluteQuad(FloatRect(rect)).boundingBox());
+    FrameView* view = renderer.document().view();
</ins><span class="cx"> 
</span><span class="cx">     LayoutRect rootRect = absoluteRect;
</span><span class="cx">     if (!view-&gt;frame().isMainFrame()) {
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorPageAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorPageAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorPageAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorPageAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -120,7 +120,7 @@
</span><span class="cx">     void didClearWindowObjectInWorld(Frame*, DOMWrapperWorld&amp;);
</span><span class="cx">     void domContentEventFired();
</span><span class="cx">     void loadEventFired();
</span><del>-    void frameNavigated(DocumentLoader*);
</del><ins>+    void frameNavigated(Frame&amp;);
</ins><span class="cx">     void frameDetached(Frame&amp;);
</span><span class="cx">     void loaderDetachedFromFrame(DocumentLoader&amp;);
</span><span class="cx">     void frameStartedLoading(Frame&amp;);
</span><span class="lines">@@ -130,7 +130,7 @@
</span><span class="cx">     void willRunJavaScriptDialog(const String&amp; message);
</span><span class="cx">     void didRunJavaScriptDialog();
</span><span class="cx">     void applyEmulatedMedia(String&amp;);
</span><del>-    void didPaint(RenderObject*, const LayoutRect&amp;);
</del><ins>+    void didPaint(RenderObject&amp;, const LayoutRect&amp;);
</ins><span class="cx">     void didLayout();
</span><span class="cx">     void didScroll();
</span><span class="cx">     void didRecalculateStyle();
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorReplayAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorReplayAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorReplayAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorReplayAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -198,10 +198,10 @@
</span><span class="cx">     m_segmentsMap.clear();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorReplayAgent::frameNavigated(DocumentLoader* loader)
</del><ins>+void InspectorReplayAgent::frameNavigated(Frame&amp; frame)
</ins><span class="cx"> {
</span><span class="cx">     if (sessionState() != WebCore::SessionState::Inactive)
</span><del>-        m_page.replayController().frameNavigated(loader);
</del><ins>+        m_page.replayController().frameNavigated(frame);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void InspectorReplayAgent::frameDetached(Frame&amp; frame)
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorReplayAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorReplayAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorReplayAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorReplayAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -67,7 +67,7 @@
</span><span class="cx">     void willDestroyFrontendAndBackend(Inspector::DisconnectReason) override;
</span><span class="cx"> 
</span><span class="cx">     // InspectorInstrumentation callbacks.
</span><del>-    void frameNavigated(DocumentLoader*);
</del><ins>+    void frameNavigated(Frame&amp;);
</ins><span class="cx">     void frameDetached(Frame&amp;);
</span><span class="cx">     void willDispatchEvent(const Event&amp;, Frame*);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorTimelineAgentcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorTimelineAgent.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -325,7 +325,7 @@
</span><span class="cx">     pushCurrentRecord(InspectorObject::create(), TimelineRecordType::Layout, true, &amp;frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorTimelineAgent::didLayout(RenderObject* root)
</del><ins>+void InspectorTimelineAgent::didLayout(RenderObject&amp; root)
</ins><span class="cx"> {
</span><span class="cx">     if (m_recordStack.isEmpty())
</span><span class="cx">         return;
</span><span class="lines">@@ -332,7 +332,7 @@
</span><span class="cx">     TimelineRecordEntry&amp; entry = m_recordStack.last();
</span><span class="cx">     ASSERT(entry.type == TimelineRecordType::Layout);
</span><span class="cx">     Vector&lt;FloatQuad&gt; quads;
</span><del>-    root-&gt;absoluteQuads(quads);
</del><ins>+    root.absoluteQuads(quads);
</ins><span class="cx">     if (quads.size() &gt;= 1)
</span><span class="cx">         TimelineRecordFactory::appendLayoutRoot(entry.data.get(), quads[0]);
</span><span class="cx">     else
</span><span class="lines">@@ -374,12 +374,12 @@
</span><span class="cx">     pushCurrentRecord(InspectorObject::create(), TimelineRecordType::Paint, true, &amp;frame);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void InspectorTimelineAgent::didPaint(RenderObject* renderer, const LayoutRect&amp; clipRect)
</del><ins>+void InspectorTimelineAgent::didPaint(RenderObject&amp; renderer, const LayoutRect&amp; clipRect)
</ins><span class="cx"> {
</span><span class="cx">     TimelineRecordEntry&amp; entry = m_recordStack.last();
</span><span class="cx">     ASSERT(entry.type == TimelineRecordType::Paint);
</span><span class="cx">     FloatQuad quad;
</span><del>-    localToPageQuad(*renderer, clipRect, &amp;quad);
</del><ins>+    localToPageQuad(renderer, clipRect, &amp;quad);
</ins><span class="cx">     entry.data = TimelineRecordFactory::createPaintData(quad);
</span><span class="cx">     didCompleteCurrentRecord(TimelineRecordType::Paint);
</span><span class="cx"> }
</span></span></pre></div>
<a id="trunkSourceWebCoreinspectorInspectorTimelineAgenth"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/inspector/InspectorTimelineAgent.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/inspector/InspectorTimelineAgent.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/inspector/InspectorTimelineAgent.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -124,11 +124,11 @@
</span><span class="cx">     void didEvaluateScript(Frame&amp;);
</span><span class="cx">     void didInvalidateLayout(Frame&amp;);
</span><span class="cx">     void willLayout(Frame&amp;);
</span><del>-    void didLayout(RenderObject*);
</del><ins>+    void didLayout(RenderObject&amp;);
</ins><span class="cx">     void willComposite(Frame&amp;);
</span><span class="cx">     void didComposite();
</span><span class="cx">     void willPaint(Frame&amp;);
</span><del>-    void didPaint(RenderObject*, const LayoutRect&amp;);
</del><ins>+    void didPaint(RenderObject&amp;, const LayoutRect&amp;);
</ins><span class="cx">     void willRecalculateStyle(Frame*);
</span><span class="cx">     void didRecalculateStyle();
</span><span class="cx">     void didScheduleStyleRecalculation(Frame*);
</span></span></pre></div>
<a id="trunkSourceWebCoreloaderFrameLoadercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/loader/FrameLoader.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/loader/FrameLoader.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/loader/FrameLoader.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -593,7 +593,7 @@
</span><span class="cx"> 
</span><span class="cx">     // Do this after detaching the document so that the unload event works.
</span><span class="cx">     if (clearWindowProperties) {
</span><del>-        InspectorInstrumentation::frameWindowDiscarded(&amp;m_frame, m_frame.document()-&gt;domWindow());
</del><ins>+        InspectorInstrumentation::frameWindowDiscarded(m_frame, m_frame.document()-&gt;domWindow());
</ins><span class="cx">         m_frame.document()-&gt;domWindow()-&gt;resetUnlessSuspendedForDocumentSuspension();
</span><span class="cx">         m_frame.script().clearWindowShell(newDocument-&gt;domWindow(), m_frame.document()-&gt;pageCacheState() == Document::AboutToEnterPageCache);
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkSourceWebCorepageDOMTimercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/DOMTimer.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/DOMTimer.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/page/DOMTimer.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -218,7 +218,7 @@
</span><span class="cx"> #endif
</span><span class="cx"> 
</span><span class="cx">     timer-&gt;suspendIfNeeded();
</span><del>-    InspectorInstrumentation::didInstallTimer(&amp;context, timer-&gt;m_timeoutId, timeout, singleShot);
</del><ins>+    InspectorInstrumentation::didInstallTimer(context, timer-&gt;m_timeoutId, timeout, singleShot);
</ins><span class="cx"> 
</span><span class="cx">     // Keep track of nested timer installs.
</span><span class="cx">     if (NestedTimersMap* nestedTimers = NestedTimersMap::instanceForContext(context))
</span><span class="lines">@@ -238,7 +238,7 @@
</span><span class="cx">     if (NestedTimersMap* nestedTimers = NestedTimersMap::instanceForContext(context))
</span><span class="cx">         nestedTimers-&gt;remove(timeoutId);
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::didRemoveTimer(&amp;context, timeoutId);
</del><ins>+    InspectorInstrumentation::didRemoveTimer(context, timeoutId);
</ins><span class="cx">     context.removeTimeout(timeoutId);
</span><span class="cx"> }
</span><span class="cx"> 
</span><span class="lines">@@ -311,7 +311,7 @@
</span><span class="cx">     // Only the first execution of a multi-shot timer should get an affirmative user gesture indicator.
</span><span class="cx">     m_userGestureTokenToForward = nullptr;
</span><span class="cx"> 
</span><del>-    InspectorInstrumentationCookie cookie = InspectorInstrumentation::willFireTimer(&amp;context, m_timeoutId);
</del><ins>+    InspectorInstrumentationCookie cookie = InspectorInstrumentation::willFireTimer(context, m_timeoutId);
</ins><span class="cx"> 
</span><span class="cx">     // Simple case for non-one-shot timers.
</span><span class="cx">     if (isActive()) {
</span></span></pre></div>
<a id="trunkSourceWebCorepageDOMWindowcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/DOMWindow.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/DOMWindow.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/page/DOMWindow.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -491,7 +491,8 @@
</span><span class="cx"> 
</span><span class="cx"> void DOMWindow::willDetachPage()
</span><span class="cx"> {
</span><del>-    InspectorInstrumentation::frameWindowDiscarded(m_frame, this);
</del><ins>+    if (m_frame)
+        InspectorInstrumentation::frameWindowDiscarded(*m_frame, this);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void DOMWindow::willDestroyCachedFrame()
</span></span></pre></div>
<a id="trunkSourceWebCorepageFramecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Frame.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Frame.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/page/Frame.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -280,7 +280,7 @@
</span><span class="cx">     if (newDocument)
</span><span class="cx">         newDocument-&gt;didBecomeCurrentDocumentInFrame();
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::frameDocumentUpdated(this);
</del><ins>+    InspectorInstrumentation::frameDocumentUpdated(*this);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> #if ENABLE(ORIENTATION_EVENTS)
</span></span></pre></div>
<a id="trunkSourceWebCorepageFrameViewcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/FrameView.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/FrameView.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/page/FrameView.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -1565,7 +1565,7 @@
</span><span class="cx">         }
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::didLayout(cookie, root);
</del><ins>+    InspectorInstrumentation::didLayout(cookie, *root);
</ins><span class="cx">     DebugPageOverlays::didLayout(frame());
</span><span class="cx"> 
</span><span class="cx">     --m_nestedLayoutCount;
</span><span class="lines">@@ -4215,7 +4215,7 @@
</span><span class="cx">     Document* document = frame().document();
</span><span class="cx"> 
</span><span class="cx">     if (!context.paintingDisabled())
</span><del>-        InspectorInstrumentation::willPaint(renderView());
</del><ins>+        InspectorInstrumentation::willPaint(*renderView());
</ins><span class="cx"> 
</span><span class="cx">     paintingState.isTopLevelPainter = !sCurrentPaintTimeStamp;
</span><span class="cx"> 
</span><span class="lines">@@ -4273,7 +4273,7 @@
</span><span class="cx">         sCurrentPaintTimeStamp = 0;
</span><span class="cx"> 
</span><span class="cx">     if (!context.paintingDisabled()) {
</span><del>-        InspectorInstrumentation::didPaint(renderView(), dirtyRect);
</del><ins>+        InspectorInstrumentation::didPaint(*renderView(), dirtyRect);
</ins><span class="cx">         // FIXME: should probably not fire milestones for snapshot painting. https://bugs.webkit.org/show_bug.cgi?id=117623
</span><span class="cx">         firePaintRelatedMilestonesIfNeeded();
</span><span class="cx">     }
</span></span></pre></div>
<a id="trunkSourceWebCorepagePagecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/page/Page.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/page/Page.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/page/Page.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -145,7 +145,7 @@
</span><span class="cx">     for (auto&amp; page : *allPages) {
</span><span class="cx">         for (Frame* frame = &amp;page-&gt;mainFrame(); frame; frame = frame-&gt;tree().traverseNext())
</span><span class="cx">             frames.append(*frame);
</span><del>-        InspectorInstrumentation::networkStateChanged(page);
</del><ins>+        InspectorInstrumentation::networkStateChanged(*page);
</ins><span class="cx">     }
</span><span class="cx"> 
</span><span class="cx">     AtomicString eventName = isOnLine ? eventNames().onlineEvent : eventNames().offlineEvent;
</span></span></pre></div>
<a id="trunkSourceWebCorerenderingRenderLayerBackingcpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/rendering/RenderLayerBacking.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/rendering/RenderLayerBacking.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -2433,7 +2433,7 @@
</span><span class="cx">         || graphicsLayer == m_maskLayer.get()
</span><span class="cx">         || graphicsLayer == m_childClippingMaskLayer.get()
</span><span class="cx">         || graphicsLayer == m_scrollingContentsLayer.get()) {
</span><del>-        InspectorInstrumentation::willPaint(&amp;renderer());
</del><ins>+        InspectorInstrumentation::willPaint(renderer());
</ins><span class="cx"> 
</span><span class="cx">         if (!(paintingPhase &amp; GraphicsLayerPaintOverflowContents))
</span><span class="cx">             dirtyRect.intersect(enclosingIntRect(compositedBoundsIncludingMargin()));
</span><span class="lines">@@ -2441,7 +2441,7 @@
</span><span class="cx">         // We have to use the same root as for hit testing, because both methods can compute and cache clipRects.
</span><span class="cx">         paintIntoLayer(graphicsLayer, context, dirtyRect, PaintBehaviorNormal, paintingPhase);
</span><span class="cx"> 
</span><del>-        InspectorInstrumentation::didPaint(&amp;renderer(), dirtyRect);
</del><ins>+        InspectorInstrumentation::didPaint(renderer(), dirtyRect);
</ins><span class="cx">     } else if (graphicsLayer == layerForHorizontalScrollbar()) {
</span><span class="cx">         paintScrollbar(m_owningLayer.horizontalScrollbar(), context, dirtyRect);
</span><span class="cx">     } else if (graphicsLayer == layerForVerticalScrollbar()) {
</span></span></pre></div>
<a id="trunkSourceWebCorereplayReplayControllercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/replay/ReplayController.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/replay/ReplayController.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/replay/ReplayController.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -403,10 +403,9 @@
</span><span class="cx">     startPlayback();
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-void ReplayController::frameNavigated(DocumentLoader* loader)
</del><ins>+void ReplayController::frameNavigated(Frame&amp; frame)
</ins><span class="cx"> {
</span><span class="cx">     ASSERT(m_sessionState != SessionState::Inactive);
</span><del>-    ASSERT_ARG(loader, loader);
</del><span class="cx">     
</span><span class="cx">     // The initial capturing segment is created prior to main frame navigation.
</span><span class="cx">     // Otherwise, the prior capturing segment was completed when the frame detached,
</span><span class="lines">@@ -421,8 +420,8 @@
</span><span class="cx"> 
</span><span class="cx">     // We store the input cursor in both Document and JSDOMWindow, so that
</span><span class="cx">     // replay state is accessible from JavaScriptCore and script-free layout code.
</span><del>-    loader-&gt;frame()-&gt;document()-&gt;setInputCursor(*m_activeCursor);
-    loader-&gt;frame()-&gt;script().globalObject(mainThreadNormalWorld())-&gt;setInputCursor(m_activeCursor.get());
</del><ins>+    frame.document()-&gt;setInputCursor(*m_activeCursor);
+    frame.script().globalObject(mainThreadNormalWorld())-&gt;setInputCursor(m_activeCursor.get());
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void ReplayController::frameDetached(Frame&amp; frame)
</span></span></pre></div>
<a id="trunkSourceWebCorereplayReplayControllerh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/replay/ReplayController.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/replay/ReplayController.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/replay/ReplayController.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -131,7 +131,7 @@
</span><span class="cx">     void switchSession(RefPtr&lt;ReplaySession&gt;&amp;&amp;);
</span><span class="cx"> 
</span><span class="cx">     // InspectorReplayAgent notifications.
</span><del>-    void frameNavigated(DocumentLoader*);
</del><ins>+    void frameNavigated(Frame&amp;);
</ins><span class="cx">     void frameDetached(Frame&amp;);
</span><span class="cx">     void willDispatchEvent(const Event&amp;, Frame*);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCorestorageStorageEventDispatchercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/storage/StorageEventDispatcher.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/storage/StorageEventDispatcher.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/storage/StorageEventDispatcher.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -76,7 +76,7 @@
</span><span class="cx"> 
</span><span class="cx"> void StorageEventDispatcher::dispatchSessionStorageEventsToFrames(Page&amp; page, const Vector&lt;RefPtr&lt;Frame&gt;&gt;&amp; frames, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, const String&amp; url, SecurityOrigin* securityOrigin)
</span><span class="cx"> {
</span><del>-    InspectorInstrumentation::didDispatchDOMStorageEvent(key, oldValue, newValue, SessionStorage, securityOrigin, &amp;page);
</del><ins>+    InspectorInstrumentation::didDispatchDOMStorageEvent(page, key, oldValue, newValue, SessionStorage, securityOrigin);
</ins><span class="cx"> 
</span><span class="cx">     for (auto&amp; frame : frames) {
</span><span class="cx">         auto result = frame-&gt;document()-&gt;domWindow()-&gt;sessionStorage();
</span><span class="lines">@@ -88,7 +88,7 @@
</span><span class="cx"> void StorageEventDispatcher::dispatchLocalStorageEventsToFrames(PageGroup&amp; pageGroup, const Vector&lt;RefPtr&lt;Frame&gt;&gt;&amp; frames, const String&amp; key, const String&amp; oldValue, const String&amp; newValue, const String&amp; url, SecurityOrigin* securityOrigin)
</span><span class="cx"> {
</span><span class="cx">     for (auto&amp; page : pageGroup.pages())
</span><del>-        InspectorInstrumentation::didDispatchDOMStorageEvent(key, oldValue, newValue, LocalStorage, securityOrigin, page);
</del><ins>+        InspectorInstrumentation::didDispatchDOMStorageEvent(*page, key, oldValue, newValue, LocalStorage, securityOrigin);
</ins><span class="cx"> 
</span><span class="cx">     for (auto&amp; frame : frames) {
</span><span class="cx">         auto result = frame-&gt;document()-&gt;domWindow()-&gt;localStorage();
</span></span></pre></div>
<a id="trunkSourceWebCoreworkersWorkercpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/workers/Worker.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/workers/Worker.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/workers/Worker.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -156,7 +156,7 @@
</span><span class="cx">     else {
</span><span class="cx">         const ContentSecurityPolicyResponseHeaders&amp; contentSecurityPolicyResponseHeaders = m_contentSecurityPolicyResponseHeaders ? m_contentSecurityPolicyResponseHeaders.value() : scriptExecutionContext()-&gt;contentSecurityPolicy()-&gt;responseHeaders();
</span><span class="cx">         m_contextProxy-&gt;startWorkerGlobalScope(m_scriptLoader-&gt;url(), scriptExecutionContext()-&gt;userAgent(m_scriptLoader-&gt;url()), m_scriptLoader-&gt;script(), contentSecurityPolicyResponseHeaders, m_shouldBypassMainWorldContentSecurityPolicy, m_runtimeFlags);
</span><del>-        InspectorInstrumentation::scriptImported(scriptExecutionContext(), m_scriptLoader-&gt;identifier(), m_scriptLoader-&gt;script());
</del><ins>+        InspectorInstrumentation::scriptImported(*scriptExecutionContext(), m_scriptLoader-&gt;identifier(), m_scriptLoader-&gt;script());
</ins><span class="cx">     }
</span><span class="cx">     m_scriptLoader = nullptr;
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreworkersWorkerGlobalScopecpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/workers/WorkerGlobalScope.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/workers/WorkerGlobalScope.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/workers/WorkerGlobalScope.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -228,7 +228,7 @@
</span><span class="cx">         if (scriptLoader-&gt;failed())
</span><span class="cx">             return Exception { NETWORK_ERR };
</span><span class="cx"> 
</span><del>-        InspectorInstrumentation::scriptImported(this, scriptLoader-&gt;identifier(), scriptLoader-&gt;script());
</del><ins>+        InspectorInstrumentation::scriptImported(*this, scriptLoader-&gt;identifier(), scriptLoader-&gt;script());
</ins><span class="cx"> 
</span><span class="cx">         NakedPtr&lt;JSC::Exception&gt; exception;
</span><span class="cx">         m_script-&gt;evaluate(ScriptSourceCode(scriptLoader-&gt;script(), scriptLoader-&gt;responseURL()), exception);
</span><span class="lines">@@ -258,7 +258,7 @@
</span><span class="cx">         return;
</span><span class="cx">     }
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::addMessageToConsole(this, WTFMove(message));
</del><ins>+    InspectorInstrumentation::addMessageToConsole(*this, WTFMove(message));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WorkerGlobalScope::addConsoleMessage(MessageSource source, MessageLevel level, const String&amp; message, unsigned long requestIdentifier)
</span><span class="lines">@@ -278,7 +278,7 @@
</span><span class="cx">         message = std::make_unique&lt;Inspector::ConsoleMessage&gt;(source, MessageType::Log, level, messageText, WTFMove(callStack), requestIdentifier);
</span><span class="cx">     else
</span><span class="cx">         message = std::make_unique&lt;Inspector::ConsoleMessage&gt;(source, MessageType::Log, level, messageText, sourceURL, lineNumber, columnNumber, state, requestIdentifier);
</span><del>-    InspectorInstrumentation::addMessageToConsole(this, WTFMove(message));
</del><ins>+    InspectorInstrumentation::addMessageToConsole(*this, WTFMove(message));
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> bool WorkerGlobalScope::isContextThread() const
</span></span></pre></div>
<a id="trunkSourceWebCoreworkersWorkerInspectorProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/workers/WorkerInspectorProxy.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/workers/WorkerInspectorProxy.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/workers/WorkerInspectorProxy.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -56,7 +56,7 @@
</span><span class="cx">     ASSERT(!m_pageChannel);
</span><span class="cx"> }
</span><span class="cx"> 
</span><del>-WorkerThreadStartMode WorkerInspectorProxy::workerStartMode(ScriptExecutionContext* scriptExecutionContext)
</del><ins>+WorkerThreadStartMode WorkerInspectorProxy::workerStartMode(ScriptExecutionContext&amp; scriptExecutionContext)
</ins><span class="cx"> {
</span><span class="cx">     bool pauseOnStart = InspectorInstrumentation::shouldWaitForDebuggerOnStart(scriptExecutionContext);
</span><span class="cx">     return pauseOnStart ? WorkerThreadStartMode::WaitForInspector : WorkerThreadStartMode::Normal;
</span><span class="lines">@@ -72,7 +72,7 @@
</span><span class="cx"> 
</span><span class="cx">     allWorkerInspectorProxies().add(this);
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::workerStarted(m_scriptExecutionContext.get(), this, m_url);
</del><ins>+    InspectorInstrumentation::workerStarted(*m_scriptExecutionContext.get(), this, m_url);
</ins><span class="cx"> }
</span><span class="cx"> 
</span><span class="cx"> void WorkerInspectorProxy::workerTerminated()
</span><span class="lines">@@ -80,7 +80,7 @@
</span><span class="cx">     if (!m_workerThread)
</span><span class="cx">         return;
</span><span class="cx"> 
</span><del>-    InspectorInstrumentation::workerTerminated(m_scriptExecutionContext.get(), this);
</del><ins>+    InspectorInstrumentation::workerTerminated(*m_scriptExecutionContext.get(), this);
</ins><span class="cx"> 
</span><span class="cx">     allWorkerInspectorProxies().remove(this);
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreworkersWorkerInspectorProxyh"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/workers/WorkerInspectorProxy.h (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/workers/WorkerInspectorProxy.h        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/workers/WorkerInspectorProxy.h        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -58,7 +58,7 @@
</span><span class="cx">     const String&amp; identifier() const { return m_identifier; }
</span><span class="cx">     ScriptExecutionContext* scriptExecutionContext() const { return m_scriptExecutionContext.get(); }
</span><span class="cx"> 
</span><del>-    WorkerThreadStartMode workerStartMode(ScriptExecutionContext*);
</del><ins>+    WorkerThreadStartMode workerStartMode(ScriptExecutionContext&amp;);
</ins><span class="cx">     void workerStarted(ScriptExecutionContext*, WorkerThread*, const URL&amp;);
</span><span class="cx">     void workerTerminated();
</span><span class="cx"> 
</span></span></pre></div>
<a id="trunkSourceWebCoreworkersWorkerMessagingProxycpp"></a>
<div class="modfile"><h4>Modified: trunk/Source/WebCore/workers/WorkerMessagingProxy.cpp (208239 => 208240)</h4>
<pre class="diff"><span>
<span class="info">--- trunk/Source/WebCore/workers/WorkerMessagingProxy.cpp        2016-11-01 21:31:40 UTC (rev 208239)
+++ trunk/Source/WebCore/workers/WorkerMessagingProxy.cpp        2016-11-01 21:42:51 UTC (rev 208240)
</span><span class="lines">@@ -79,7 +79,7 @@
</span><span class="cx">     // FIXME: This need to be revisited when we support nested worker one day
</span><span class="cx">     ASSERT(m_scriptExecutionContext);
</span><span class="cx">     Document&amp; document = downcast&lt;Document&gt;(*m_scriptExecutionContext);
</span><del>-    WorkerThreadStartMode startMode = m_inspectorProxy-&gt;workerStartMode(m_scriptExecutionContext.get());
</del><ins>+    WorkerThreadStartMode startMode = m_inspectorProxy-&gt;workerStartMode(*m_scriptExecutionContext.get());
</ins><span class="cx"> 
</span><span class="cx"> #if ENABLE(INDEXED_DATABASE)
</span><span class="cx">     IDBClient::IDBConnectionProxy* proxy = document.idbConnectionProxy();
</span></span></pre>
</div>
</div>

</body>
</html>