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

Unified Diff: content/browser/devtools/render_view_devtools_agent_host.cc

Issue 12906011: Detect debugging target crash. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: Rebase Created 7 years, 9 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/browser/devtools/render_view_devtools_agent_host.cc
diff --git a/content/browser/devtools/render_view_devtools_agent_host.cc b/content/browser/devtools/render_view_devtools_agent_host.cc
index 1005101b27611379063734736198f196ff726df1..276c269990fb38800be33b6b20f4abdf63a4c9cc 100644
--- a/content/browser/devtools/render_view_devtools_agent_host.cc
+++ b/content/browser/devtools/render_view_devtools_agent_host.cc
@@ -10,6 +10,7 @@
#include "content/browser/child_process_security_policy_impl.h"
#include "content/browser/devtools/devtools_manager_impl.h"
#include "content/browser/devtools/devtools_protocol.h"
+#include "content/browser/devtools/devtools_protocol_constants.h"
#include "content/browser/devtools/renderer_overrides_handler.h"
#include "content/browser/renderer_host/render_process_host_impl.h"
#include "content/browser/renderer_host/render_view_host_impl.h"
@@ -48,7 +49,8 @@ static RenderViewDevToolsAgentHost* FindAgentHost(RenderViewHost* rvh) {
using WebKit::WebDevToolsAgent;
-class DevToolsAgentHostRvhObserver : public RenderViewHostObserver {
+class RenderViewDevToolsAgentHost::DevToolsAgentHostRvhObserver
pfeldman 2013/03/21 06:30:08 Why did this change?
Vladislav Kaznacheev 2013/03/21 07:24:02 yurys asked me to do that earlier in this review (
+ : public RenderViewHostObserver {
public:
DevToolsAgentHostRvhObserver(RenderViewHost* rvh,
RenderViewDevToolsAgentHost* agent_host)
@@ -271,6 +273,19 @@ void RenderViewDevToolsAgentHost::AboutToNavigateRenderView(
ConnectRenderViewHost(dest_rvh, true);
}
+void RenderViewDevToolsAgentHost::RenderViewGone(
+ base::TerminationStatus status) {
+ switch(status) {
+ case base::TERMINATION_STATUS_ABNORMAL_TERMINATION:
+ case base::TERMINATION_STATUS_PROCESS_WAS_KILLED:
+ case base::TERMINATION_STATUS_PROCESS_CRASHED:
+ RenderViewCrashed();
+ break;
+ default:
+ break;
+ }
+}
+
void RenderViewDevToolsAgentHost::ConnectRenderViewHost(RenderViewHost* rvh,
bool reattach) {
render_view_host_ = rvh;
@@ -294,6 +309,14 @@ void RenderViewDevToolsAgentHost::RenderViewHostDestroyed(
Release();
}
+void RenderViewDevToolsAgentHost::RenderViewCrashed() {
+ scoped_ptr<DevToolsProtocol::Event> event(
+ DevToolsProtocol::CreateEvent(
+ devtools::Inspector::targetCrashed::kName, NULL));
+ DevToolsManagerImpl::GetInstance()->
+ DispatchOnInspectorFrontend(this, event->Serialize());
+}
+
bool RenderViewDevToolsAgentHost::OnRvhMessageReceived(
const IPC::Message& message) {
bool handled = true;

Powered by Google App Engine
This is Rietveld 408576698