summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorcbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-09 12:26:56 +0000
committercbentzel@chromium.org <cbentzel@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-02-09 12:26:56 +0000
commitce2b3aac9c878e0b81466f9c5a395fba66dd2770 (patch)
tree8e85f2192198244d01eab1209f9fdaa9edeeca89
parent0d784db1fd262e8c9c30df2d135ff1023757e20e (diff)
downloadchromium_src-ce2b3aac9c878e0b81466f9c5a395fba66dd2770.zip
chromium_src-ce2b3aac9c878e0b81466f9c5a395fba66dd2770.tar.gz
chromium_src-ce2b3aac9c878e0b81466f9c5a395fba66dd2770.tar.bz2
Check for NULL active_web_contents when starting prerender.
On OSX, it appears that the active_web_contents can sometimes be NULL when doing omnibox-triggered prerender. Right now that causes a crash. With this change prerendering will continue, but the initial bounds for the prerender will be very small. BUG=108986 Review URL: http://codereview.chromium.org/9365032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121228 0039d316-1c4b-4281-b951-d872f2087c98
-rw-r--r--chrome/browser/prerender/prerender_contents.cc5
1 files changed, 3 insertions, 2 deletions
diff --git a/chrome/browser/prerender/prerender_contents.cc b/chrome/browser/prerender/prerender_contents.cc
index c635522..c34e542 100644
--- a/chrome/browser/prerender/prerender_contents.cc
+++ b/chrome/browser/prerender/prerender_contents.cc
@@ -253,7 +253,7 @@ void PrerenderContents::StartPrerendering(
prerender_contents_.reset(new TabContentsWrapper(new_contents));
content::WebContentsObserver::Observe(new_contents);
- gfx::Rect tab_bounds;
+ gfx::Rect tab_bounds(640, 480);
if (source_render_view_host) {
DCHECK(source_render_view_host->view() != NULL);
WebContents* source_wc =
@@ -270,7 +270,8 @@ void PrerenderContents::StartPrerendering(
if (active_browser) {
WebContents* active_web_contents = active_browser->GetWebContentsAt(
active_browser->active_index());
- active_web_contents->GetView()->GetContainerBounds(&tab_bounds);
+ if (active_web_contents)
+ active_web_contents->GetView()->GetContainerBounds(&tab_bounds);
}
}