summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authorjamiewalch@google.com <jamiewalch@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-08 20:48:58 +0000
committerjamiewalch@google.com <jamiewalch@google.com@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-08 20:48:58 +0000
commit9191fa9008926f62c5433a18333b76e211b4a3c6 (patch)
treebd1b36ca7e1b969d36838221ea64b6d6523243c7 /content
parentef82acffb8b94957e8a65e7f72adab39398f04f8 (diff)
downloadchromium_src-9191fa9008926f62c5433a18333b76e211b4a3c6.zip
chromium_src-9191fa9008926f62c5433a18333b76e211b4a3c6.tar.gz
chromium_src-9191fa9008926f62c5433a18333b76e211b4a3c6.tar.bz2
Merge 120715 - Early-return in RenderViewImpl::DidFlushPaint() if there is no WebView.
CL 9328016 exposed a bug with seemingly-unused stats code assuming that the RenderView's WebView must be valid when DidFlushPaint() is called, which may not be true if RenderWidget::OnSwapBuffersComplete is notified while the widget is closing down. We'll follow up by verifying the stats code is unnecessary and removing it (see bug 112942). BUG=112921,111639,112942 Review URL: http://codereview.chromium.org/9349004 TBR=wez@chromium.org Review URL: https://chromiumcodereview.appspot.com/9363030 git-svn-id: svn://svn.chromium.org/chrome/branches/1025/src@121039 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r--content/renderer/render_view_impl.cc5
1 files changed, 5 insertions, 0 deletions
diff --git a/content/renderer/render_view_impl.cc b/content/renderer/render_view_impl.cc
index f4dc033..b7ec05c 100644
--- a/content/renderer/render_view_impl.cc
+++ b/content/renderer/render_view_impl.cc
@@ -4316,6 +4316,11 @@ void RenderViewImpl::DidFlushPaint() {
// won't change out from under us.
pepper_delegate_.ViewFlushedPaint();
+ // If the RenderWidget is closing down then early-exit, otherwise we'll crash.
+ // See crbug.com/112921.
+ if (!webview())
+ return;
+
WebFrame* main_frame = webview()->mainFrame();
// If we have a provisional frame we are between the start and commit stages