Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(155)

Side by Side Diff: third_party/WebKit/Source/core/workers/WorkerInspectorProxy.cpp

Issue 1925583003: Replace AllowCrossThreadAccess() + non-GCed pointers with crossThreadUnretained() (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@Kuroneko_4
Patch Set: Rebase. Created 4 years, 6 months ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View unified diff | Download patch
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "core/workers/WorkerInspectorProxy.h" 5 #include "core/workers/WorkerInspectorProxy.h"
6 6
7 #include "core/dom/CrossThreadTask.h" 7 #include "core/dom/CrossThreadTask.h"
8 #include "core/frame/FrameConsole.h" 8 #include "core/frame/FrameConsole.h"
9 #include "core/inspector/IdentifiersFactory.h" 9 #include "core/inspector/IdentifiersFactory.h"
10 #include "core/inspector/InspectorInstrumentation.h" 10 #include "core/inspector/InspectorInstrumentation.h"
(...skipping 120 matching lines...) Expand 10 before | Expand all | Expand 10 after
131 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController()) 131 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController())
132 inspector->connectFrontend(); 132 inspector->connectFrontend();
133 } 133 }
134 134
135 void WorkerInspectorProxy::connectToInspector(WorkerInspectorProxy::PageInspecto r* pageInspector) 135 void WorkerInspectorProxy::connectToInspector(WorkerInspectorProxy::PageInspecto r* pageInspector)
136 { 136 {
137 if (!m_workerThread) 137 if (!m_workerThread)
138 return; 138 return;
139 DCHECK(!m_pageInspector); 139 DCHECK(!m_pageInspector);
140 m_pageInspector = pageInspector; 140 m_pageInspector = pageInspector;
141 m_workerThread->appendDebuggerTask(threadSafeBind(connectToWorkerGlobalScope InspectorTask, AllowCrossThreadAccess(m_workerThread))); 141 m_workerThread->appendDebuggerTask(threadSafeBind(connectToWorkerGlobalScope InspectorTask, crossThreadUnretained(m_workerThread)));
142 } 142 }
143 143
144 static void disconnectFromWorkerGlobalScopeInspectorTask(WorkerThread* workerThr ead) 144 static void disconnectFromWorkerGlobalScopeInspectorTask(WorkerThread* workerThr ead)
145 { 145 {
146 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController()) 146 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController())
147 inspector->disconnectFrontend(); 147 inspector->disconnectFrontend();
148 } 148 }
149 149
150 void WorkerInspectorProxy::disconnectFromInspector(WorkerInspectorProxy::PageIns pector* pageInspector) 150 void WorkerInspectorProxy::disconnectFromInspector(WorkerInspectorProxy::PageIns pector* pageInspector)
151 { 151 {
152 DCHECK(m_pageInspector == pageInspector); 152 DCHECK(m_pageInspector == pageInspector);
153 m_pageInspector = nullptr; 153 m_pageInspector = nullptr;
154 if (m_workerThread) 154 if (m_workerThread)
155 m_workerThread->appendDebuggerTask(threadSafeBind(disconnectFromWorkerGl obalScopeInspectorTask, AllowCrossThreadAccess(m_workerThread))); 155 m_workerThread->appendDebuggerTask(threadSafeBind(disconnectFromWorkerGl obalScopeInspectorTask, crossThreadUnretained(m_workerThread)));
156 } 156 }
157 157
158 static void dispatchOnInspectorBackendTask(const String& message, WorkerThread* workerThread) 158 static void dispatchOnInspectorBackendTask(const String& message, WorkerThread* workerThread)
159 { 159 {
160 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController()) 160 if (WorkerInspectorController* inspector = workerThread->workerGlobalScope() ->workerInspectorController())
161 inspector->dispatchMessageFromFrontend(message); 161 inspector->dispatchMessageFromFrontend(message);
162 } 162 }
163 163
164 void WorkerInspectorProxy::sendMessageToInspector(const String& message) 164 void WorkerInspectorProxy::sendMessageToInspector(const String& message)
165 { 165 {
166 if (m_workerThread) 166 if (m_workerThread)
167 m_workerThread->appendDebuggerTask(threadSafeBind(dispatchOnInspectorBac kendTask, message, AllowCrossThreadAccess(m_workerThread))); 167 m_workerThread->appendDebuggerTask(threadSafeBind(dispatchOnInspectorBac kendTask, message, crossThreadUnretained(m_workerThread)));
168 } 168 }
169 169
170 void WorkerInspectorProxy::writeTimelineStartedEvent(const String& sessionId) 170 void WorkerInspectorProxy::writeTimelineStartedEvent(const String& sessionId)
171 { 171 {
172 if (!m_workerThread) 172 if (!m_workerThread)
173 return; 173 return;
174 TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "Tracin gSessionIdForWorker", TRACE_EVENT_SCOPE_THREAD, "data", InspectorTracingSessionI dForWorkerEvent::data(sessionId, inspectorId(), m_workerThread)); 174 TRACE_EVENT_INSTANT1(TRACE_DISABLED_BY_DEFAULT("devtools.timeline"), "Tracin gSessionIdForWorker", TRACE_EVENT_SCOPE_THREAD, "data", InspectorTracingSessionI dForWorkerEvent::data(sessionId, inspectorId(), m_workerThread));
175 } 175 }
176 176
177 DEFINE_TRACE(WorkerInspectorProxy) 177 DEFINE_TRACE(WorkerInspectorProxy)
178 { 178 {
179 visitor->trace(m_document); 179 visitor->trace(m_document);
180 visitor->trace(m_consoleMessages); 180 visitor->trace(m_consoleMessages);
181 } 181 }
182 182
183 } // namespace blink 183 } // namespace blink
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698