summaryrefslogtreecommitdiffstats
path: root/ui/gl
diff options
context:
space:
mode:
authorapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-28 19:21:50 +0000
committerapatrick@chromium.org <apatrick@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2012-06-28 19:21:50 +0000
commitf57573f8a646e895e221756c73751ce5dd30d1a3 (patch)
tree4194d8bfa8dc5ea31ccc8b48b3971cd2665bb589 /ui/gl
parentb815ffcfd145638fc0dc04a14e2964a2c8dbc5e1 (diff)
downloadchromium_src-f57573f8a646e895e221756c73751ce5dd30d1a3.zip
chromium_src-f57573f8a646e895e221756c73751ce5dd30d1a3.tar.gz
chromium_src-f57573f8a646e895e221756c73751ce5dd30d1a3.tar.bz2
CHECK that eglQuerySurfacePointerANGLE always returns a valid handle.
BUG=131129 Review URL: https://chromiumcodereview.appspot.com/10713005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@144770 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'ui/gl')
-rwxr-xr-xui/gl/generate_bindings.py1
-rw-r--r--ui/gl/gl_surface_egl.cc12
2 files changed, 10 insertions, 3 deletions
diff --git a/ui/gl/generate_bindings.py b/ui/gl/generate_bindings.py
index 6cd7e52..de6b521 100755
--- a/ui/gl/generate_bindings.py
+++ b/ui/gl/generate_bindings.py
@@ -1065,6 +1065,7 @@ FUNCTION_SETS = [
[EGL_FUNCTIONS, 'egl', ['../../third_party/khronos/EGL/eglext.h'],
[
'EGL_ANGLE_d3d_share_handle_client_buffer',
+ 'EGL_ANGLE_surface_d3d_texture_2d_share_handle',
],
],
[WGL_FUNCTIONS, 'wgl', [
diff --git a/ui/gl/gl_surface_egl.cc b/ui/gl/gl_surface_egl.cc
index 17ecce7..3fda8e7 100644
--- a/ui/gl/gl_surface_egl.cc
+++ b/ui/gl/gl_surface_egl.cc
@@ -439,8 +439,10 @@ bool PbufferGLSurfaceEGL::Resize(const gfx::Size& size) {
size_ = size;
- if (!Initialize())
+ if (!Initialize()) {
+ LOG(ERROR) << "Failed to resize pbuffer.";
return false;
+ }
if (was_current)
return current_context->MakeCurrent(this);
@@ -457,8 +459,10 @@ void* PbufferGLSurfaceEGL::GetShareHandle() {
NOTREACHED();
return NULL;
#else
- const char* extensions = eglQueryString(g_display, EGL_EXTENSIONS);
- if (!strstr(extensions, "EGL_ANGLE_query_surface_pointer"))
+ if (!g_EGL_ANGLE_query_surface_pointer)
+ return NULL;
+
+ if (!g_EGL_ANGLE_surface_d3d_texture_2d_share_handle)
return NULL;
void* handle;
@@ -469,6 +473,8 @@ void* PbufferGLSurfaceEGL::GetShareHandle() {
return NULL;
}
+ CHECK(handle);
+
return handle;
#endif
}