summaryrefslogtreecommitdiffstats
path: root/content/browser/debugger/worker_devtools_manager.cc
diff options
context:
space:
mode:
Diffstat (limited to 'content/browser/debugger/worker_devtools_manager.cc')
-rw-r--r--content/browser/debugger/worker_devtools_manager.cc25
1 files changed, 25 insertions, 0 deletions
diff --git a/content/browser/debugger/worker_devtools_manager.cc b/content/browser/debugger/worker_devtools_manager.cc
index 573ef3f..5bd8071 100644
--- a/content/browser/debugger/worker_devtools_manager.cc
+++ b/content/browser/debugger/worker_devtools_manager.cc
@@ -281,6 +281,18 @@ void WorkerDevToolsManager::ForwardToDevToolsClient(
message));
}
+void WorkerDevToolsManager::SaveAgentRuntimeState(int worker_process_id,
+ int worker_route_id,
+ const std::string& state) {
+ BrowserThread::PostTask(
+ BrowserThread::UI, FROM_HERE,
+ NewRunnableFunction(
+ SaveAgentRuntimeStateOnUIThread,
+ worker_process_id,
+ worker_route_id,
+ state));
+}
+
void WorkerDevToolsManager::WorkerProcessDestroying(
int worker_process_id) {
inspected_workers_->WorkerDevToolsMessageFilterClosing(
@@ -315,6 +327,19 @@ void WorkerDevToolsManager::ForwardToDevToolsClientOnUIThread(
}
// static
+void WorkerDevToolsManager::SaveAgentRuntimeStateOnUIThread(
+ int worker_process_id,
+ int worker_route_id,
+ const std::string& state) {
+ WorkerDevToolsAgentHost* agent_host = AgentHosts::GetAgentHost(WorkerId(
+ worker_process_id,
+ worker_route_id));
+ if (!agent_host)
+ return;
+ DevToolsManager::GetInstance()->SaveAgentRuntimeState(agent_host, state);
+}
+
+// static
void WorkerDevToolsManager::NotifyWorkerDestroyedOnIOThread(
int worker_process_id,
int worker_route_id) {