diff options
author | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-05 01:20:18 +0000 |
---|---|---|
committer | jamesr@chromium.org <jamesr@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98> | 2013-10-05 01:20:18 +0000 |
commit | a9938b4f9bd685204cc7985606da4d35a280446d (patch) | |
tree | bbbcca95bd2634cc9fac37293969f1bcd6bff426 /content/renderer | |
parent | afc4f26f51818368ae6d9ea3fbe643df2cba6d52 (diff) | |
download | chromium_src-a9938b4f9bd685204cc7985606da4d35a280446d.zip chromium_src-a9938b4f9bd685204cc7985606da4d35a280446d.tar.gz chromium_src-a9938b4f9bd685204cc7985606da4d35a280446d.tar.bz2 |
Check if RTI::SharedMainThreadContextProvider is there before wrapping
It's not valid to wrap a NULL cc::ContextProvider in a
WebGraphicsContext3DProvider, so NULL check it before wrapping. The
SharedMainThreadContextProvider() could be NULL if we can't create
and bind a valid context, which can happen if the GPU is unhappy or
the process crashes any early point in initialization.
BUG=301555
Review URL: https://codereview.chromium.org/26028004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@227166 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'content/renderer')
-rw-r--r-- | content/renderer/renderer_webkitplatformsupport_impl.cc | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/content/renderer/renderer_webkitplatformsupport_impl.cc b/content/renderer/renderer_webkitplatformsupport_impl.cc index d557e1d..0fbb5f4 100644 --- a/content/renderer/renderer_webkitplatformsupport_impl.cc +++ b/content/renderer/renderer_webkitplatformsupport_impl.cc @@ -957,9 +957,11 @@ RendererWebKitPlatformSupportImpl::createOffscreenGraphicsContext3D( WebKit::WebGraphicsContext3DProvider* RendererWebKitPlatformSupportImpl:: createSharedOffscreenGraphicsContext3DProvider() { - WebKit::WebGraphicsContext3D::Attributes attr; - return new webkit::gpu::WebGraphicsContext3DProviderImpl( - RenderThreadImpl::current()->SharedMainThreadContextProvider()); + scoped_refptr<cc::ContextProvider> provider = + RenderThreadImpl::current()->SharedMainThreadContextProvider(); + if (!provider) + return NULL; + return new webkit::gpu::WebGraphicsContext3DProviderImpl(provider); } //------------------------------------------------------------------------------ |