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

Unified Diff: content/renderer/webworker_base.cc

Issue 6990059: DevTools: devtools message plumbing between worker and page processes (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Created 9 years, 7 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 side-by-side diff with in-line comments
Download patch
Index: content/renderer/webworker_base.cc
diff --git a/content/renderer/webworker_base.cc b/content/renderer/webworker_base.cc
index c8e1304eef28ecf1da2a652bb3d1c902d8a960be..3bdb41294748f1fd84372930b40d69b322d06651 100644
--- a/content/renderer/webworker_base.cc
+++ b/content/renderer/webworker_base.cc
@@ -26,6 +26,7 @@ WebWorkerBase::WebWorkerBase(
: route_id_(route_id),
render_view_route_id_(render_view_route_id),
child_thread_(child_thread),
+ devtools_delegate_(0),
document_id_(document_id),
parent_appcache_host_id_(parent_appcache_host_id) {
if (route_id_ != MSG_ROUTING_NONE)
@@ -33,6 +34,8 @@ WebWorkerBase::WebWorkerBase(
}
WebWorkerBase::~WebWorkerBase() {
+ if (devtools_delegate_)
+ devtools_delegate_->WorkerProxyDestroyed();
Disconnect();
// Free up any unsent queued messages.
@@ -50,6 +53,9 @@ void WebWorkerBase::Disconnect() {
child_thread_->RemoveRoute(route_id_);
route_id_ = MSG_ROUTING_NONE;
+
+ if (devtools_delegate_)
+ devtools_delegate_->SetRouteId(route_id_);
Dmitry Titov 2011/05/25 01:38:44 If MSG_ROUTING_NONE was used directly here, it'd b
}
void WebWorkerBase::CreateWorkerContext(const GURL& script_url,
@@ -77,6 +83,9 @@ void WebWorkerBase::CreateWorkerContext(const GURL& script_url,
child_thread_->AddRoute(route_id_, this);
+ if (devtools_delegate_)
+ devtools_delegate_->SetRouteId(route_id_);
+
// We make sure that the start message is the first, since postMessage or
// connect might have already been called.
queued_messages_.insert(queued_messages_.begin(),
@@ -117,3 +126,8 @@ void WebWorkerBase::SendQueuedMessages() {
Send(queued_messages[i]);
}
}
+
+void WebWorkerBase::set_devtools_delegate(DevToolsDelegate* delegate) {
+ DCHECK(!devtools_delegate_ && delegate);
+ devtools_delegate_ = delegate;
+}

Powered by Google App Engine
This is Rietveld 408576698