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

Unified Diff: content/browser/renderer_host/render_view_host_impl.cc

Issue 1159183002: Improve process crash handling in RenderViewHost & mock RenderProcessHost. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix for WebViewInteractiveUiTest.TextInputClientIsUpToDate Created 5 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/browser/renderer_host/render_view_host_impl.cc
diff --git a/content/browser/renderer_host/render_view_host_impl.cc b/content/browser/renderer_host/render_view_host_impl.cc
index 54437614344564349b91c74f4f79988d5011b036..135ef6060f93006e9fdfe4ba5c962972d2eb48c1 100644
--- a/content/browser/renderer_host/render_view_host_impl.cc
+++ b/content/browser/renderer_host/render_view_host_impl.cc
@@ -227,6 +227,7 @@ RenderViewHostImpl::RenderViewHostImpl(
DCHECK(instance_.get());
CHECK(delegate_); // http://crbug.com/82827
+ GetProcess()->AddObserver(this);
GetProcess()->EnableSendQueue();
if (ResourceDispatcherHostImpl::Get()) {
@@ -261,6 +262,7 @@ RenderViewHostImpl::~RenderViewHostImpl() {
}
delegate_->RenderViewDeleted(this);
+ GetProcess()->RemoveObserver(this);
}
RenderViewHostDelegate* RenderViewHostImpl::GetDelegate() const {
@@ -583,6 +585,17 @@ void RenderViewHostImpl::RequestFindMatchRects(int current_version) {
}
#endif
+void RenderViewHostImpl::RenderProcessExited(RenderProcessHost* host,
+ base::TerminationStatus status,
+ int exit_code) {
+ if (!renderer_initialized())
+ return;
+
+ RenderWidgetHostImpl::RendererExited(status, exit_code);
+ delegate_->RenderViewTerminated(
+ this, static_cast<base::TerminationStatus>(status), exit_code);
+}
+
void RenderViewHostImpl::DragTargetDragEnter(
const DropData& drop_data,
const gfx::Point& client_pt,

Powered by Google App Engine
This is Rietveld 408576698