summaryrefslogtreecommitdiffstats
path: root/content
diff options
context:
space:
mode:
authorprimiano@chromium.org <primiano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-02 06:57:17 +0000
committerprimiano@chromium.org <primiano@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-07-02 06:57:17 +0000
commite9271ae4de6019e32453d9c3ef6e6def870f57b0 (patch)
tree5336450e8738c36dbb0303f38ea52fbc1ffaeff2 /content
parentedea649fc41c7a24a55c034bccae0e7ecaafc3fc (diff)
downloadchromium_src-e9271ae4de6019e32453d9c3ef6e6def870f57b0.zip
chromium_src-e9271ae4de6019e32453d9c3ef6e6def870f57b0.tar.gz
chromium_src-e9271ae4de6019e32453d9c3ef6e6def870f57b0.tar.bz2
Merge 279661 "Don't initialize GpuDataManager if GPU is not dete..."
> Don't initialize GpuDataManager if GPU is not detected. > > Avoid calling the CpuDataManagerImpl initializer if the GPU > could not be detected (established_gpu_channel == false). > This is to ensure that WebView can still startup and fall back > to SW rendering path in the Android emulator. > > BUG=388642 > > Review URL: https://codereview.chromium.org/337123003 TBR=primiano@chromium.org Review URL: https://codereview.chromium.org/366923003 git-svn-id: svn://svn.chromium.org/chrome/branches/2062/src@280953 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content')
-rw-r--r--content/browser/browser_main_loop.cc10
1 files changed, 7 insertions, 3 deletions
diff --git a/content/browser/browser_main_loop.cc b/content/browser/browser_main_loop.cc
index 05b679a..8bcc3d3 100644
--- a/content/browser/browser_main_loop.cc
+++ b/content/browser/browser_main_loop.cc
@@ -932,16 +932,20 @@ int BrowserMainLoop::BrowserThreadsStarted() {
#if !defined(OS_IOS)
HistogramSynchronizer::GetInstance();
+ bool initialize_gpu_data_manager = true;
#if defined(OS_ANDROID)
// On Android, GLSurface::InitializeOneOff() must be called before initalizing
// the GpuDataManagerImpl as it uses the GL bindings. crbug.com/326295
- if (!gfx::GLSurface::InitializeOneOff())
- LOG(FATAL) << "GLSurface::InitializeOneOff failed";
+ if (!gfx::GLSurface::InitializeOneOff()) {
+ LOG(ERROR) << "GLSurface::InitializeOneOff failed";
+ initialize_gpu_data_manager = false;
+ }
#endif
// Initialize the GpuDataManager before we set up the MessageLoops because
// otherwise we'll trigger the assertion about doing IO on the UI thread.
- GpuDataManagerImpl::GetInstance()->Initialize();
+ if (initialize_gpu_data_manager)
+ GpuDataManagerImpl::GetInstance()->Initialize();
bool always_uses_gpu = true;
bool established_gpu_channel = false;