Fix how we detect renderer crash.
authorCheng Zhao <zcbenz@gmail.com>
Thu, 18 Jul 2013 10:37:40 +0000 (18:37 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Thu, 18 Jul 2013 10:37:40 +0000 (18:37 +0800)
browser/native_window.cc
browser/native_window.h

index 69d0594..cecbb77 100644 (file)
@@ -273,13 +273,6 @@ void NativeWindow::RendererResponsive(content::WebContents* source) {
   FOR_EACH_OBSERVER(NativeWindowObserver, observers_, OnRendererResponsive());
 }
 
-void NativeWindow::NavigationStateChanged(const content::WebContents* source,
-                                          unsigned changed_flags) {
-  if (changed_flags == content::INVALIDATE_TYPE_TAB &&
-      source->IsCrashed())
-    FOR_EACH_OBSERVER(NativeWindowObserver, observers_, OnRendererCrashed());
-}
-
 bool NativeWindow::OnMessageReceived(const IPC::Message& message) {
   bool handled = true;
   IPC_BEGIN_MESSAGE_MAP(NativeWindow, message)
@@ -291,6 +284,10 @@ bool NativeWindow::OnMessageReceived(const IPC::Message& message) {
   return handled;
 }
 
+void NativeWindow::RenderViewGone(base::TerminationStatus status) {
+  FOR_EACH_OBSERVER(NativeWindowObserver, observers_, OnRendererCrashed());
+}
+
 void NativeWindow::Observe(int type,
                            const content::NotificationSource& source,
                            const content::NotificationDetails& details) {
index e778377..aa040ba 100644 (file)
@@ -151,10 +151,9 @@ class NativeWindow : public content::WebContentsDelegate,
       const content::WebContents* source) const OVERRIDE;
   virtual void RendererUnresponsive(content::WebContents* source) OVERRIDE;
   virtual void RendererResponsive(content::WebContents* source) OVERRIDE;
-  virtual void NavigationStateChanged(const content::WebContents* source,
-                                      unsigned changed_flags) OVERRIDE;
 
   // Implementations of content::WebContentsObserver.
+  virtual void RenderViewGone(base::TerminationStatus status) OVERRIDE;
   virtual bool OnMessageReceived(const IPC::Message& message) OVERRIDE;
 
   // Implementations of content::NotificationObserver