| OLD | NEW |
| 1 // Copyright (c) 2011 The Chromium Authors. All rights reserved. | 1 // Copyright (c) 2011 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 "content/browser/devtools/worker_devtools_manager.h" | 5 #include "content/browser/devtools/worker_devtools_manager.h" |
| 6 | 6 |
| 7 #include <list> | 7 #include <list> |
| 8 #include <map> | 8 #include <map> |
| 9 | 9 |
| 10 #include "base/bind.h" | 10 #include "base/bind.h" |
| (...skipping 210 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 221 return new WorkerDevToolsAgentHost(id); | 221 return new WorkerDevToolsAgentHost(id); |
| 222 return it->second; | 222 return it->second; |
| 223 } | 223 } |
| 224 | 224 |
| 225 WorkerDevToolsManager::WorkerDevToolsManager() { | 225 WorkerDevToolsManager::WorkerDevToolsManager() { |
| 226 } | 226 } |
| 227 | 227 |
| 228 WorkerDevToolsManager::~WorkerDevToolsManager() { | 228 WorkerDevToolsManager::~WorkerDevToolsManager() { |
| 229 } | 229 } |
| 230 | 230 |
| 231 void WorkerDevToolsManager::WorkerCreated( | 231 bool WorkerDevToolsManager::WorkerCreated( |
| 232 WorkerProcessHost* worker, | 232 WorkerProcessHost* worker, |
| 233 const WorkerProcessHost::WorkerInstance& instance) { | 233 const WorkerProcessHost::WorkerInstance& instance) { |
| 234 for (TerminatedInspectedWorkers::iterator it = terminated_workers_.begin(); | 234 for (TerminatedInspectedWorkers::iterator it = terminated_workers_.begin(); |
| 235 it != terminated_workers_.end(); ++it) { | 235 it != terminated_workers_.end(); ++it) { |
| 236 if (instance.Matches(it->worker_url, it->worker_name, | 236 if (instance.Matches(it->worker_url, it->worker_name, |
| 237 instance.partition(), | 237 instance.partition(), |
| 238 instance.resource_context())) { | 238 instance.resource_context())) { |
| 239 worker->Send(new DevToolsAgentMsg_PauseWorkerContextOnStart( | |
| 240 instance.worker_route_id())); | |
| 241 WorkerId new_worker_id(worker->GetData().id, instance.worker_route_id()); | 239 WorkerId new_worker_id(worker->GetData().id, instance.worker_route_id()); |
| 242 paused_workers_[new_worker_id] = it->old_worker_id; | 240 paused_workers_[new_worker_id] = it->old_worker_id; |
| 243 terminated_workers_.erase(it); | 241 terminated_workers_.erase(it); |
| 244 return; | 242 return true; |
| 245 } | 243 } |
| 246 } | 244 } |
| 245 return false; |
| 247 } | 246 } |
| 248 | 247 |
| 249 void WorkerDevToolsManager::WorkerDestroyed( | 248 void WorkerDevToolsManager::WorkerDestroyed( |
| 250 WorkerProcessHost* worker, | 249 WorkerProcessHost* worker, |
| 251 int worker_route_id) { | 250 int worker_route_id) { |
| 252 InspectedWorkersList::iterator it = FindInspectedWorker( | 251 InspectedWorkersList::iterator it = FindInspectedWorker( |
| 253 worker->GetData().id, | 252 worker->GetData().id, |
| 254 worker_route_id); | 253 worker_route_id); |
| 255 if (it == inspected_workers_.end()) | 254 if (it == inspected_workers_.end()) |
| 256 return; | 255 return; |
| (...skipping 181 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
| 438 process->Send(new DevToolsAgentMsg_ResumeWorkerContext(id.second)); | 437 process->Send(new DevToolsAgentMsg_ResumeWorkerContext(id.second)); |
| 439 } | 438 } |
| 440 | 439 |
| 441 WorkerDevToolsManager::WorkerDevToolsAgentHost::~WorkerDevToolsAgentHost() { | 440 WorkerDevToolsManager::WorkerDevToolsAgentHost::~WorkerDevToolsAgentHost() { |
| 442 DetachedClientHosts::RemovePendingWorkerData(worker_id_); | 441 DetachedClientHosts::RemovePendingWorkerData(worker_id_); |
| 443 g_agent_map.Get().erase(worker_id_); | 442 g_agent_map.Get().erase(worker_id_); |
| 444 g_orphan_map.Get().erase(worker_id_); | 443 g_orphan_map.Get().erase(worker_id_); |
| 445 } | 444 } |
| 446 | 445 |
| 447 } // namespace content | 446 } // namespace content |
| OLD | NEW |