summaryrefslogtreecommitdiff
authorChris Wilson <chris@chris-wilson.co.uk>2012-08-11 16:38:36 (GMT)
committer Chris Wilson <chris@chris-wilson.co.uk>2012-08-11 16:42:17 (GMT)
commitf59b0914f4ddbff0d116c918343a6726d5f4317b (patch) (side-by-side diff)
tree6d39ad66a09bced11b75fdb50796e38f4ac97e56
parentb438e583089229d934df48e6fbf0edcd1b23dcd4 (diff)
downloadcairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.zip
cairo-f59b0914f4ddbff0d116c918343a6726d5f4317b.tar.gz
egl: s/EGL_KHR_surfaceless_opengl/EGL_KHR_surfaceless_context/
Mesa changed the name of the extension it invented, so check for the real name and the old name before falling back to pbuffers which are not supported by most EGL implementations. References: https://bugs.freedesktop.org/show_bug.cgi?id=53361 Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
Diffstat (more/less context) (ignore whitespace changes)
-rw-r--r--src/cairo-egl-context.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/src/cairo-egl-context.c b/src/cairo-egl-context.c
index eb1ef29..b24bc80 100644
--- a/src/cairo-egl-context.c
+++ b/src/cairo-egl-context.c
@@ -122,8 +122,10 @@ _egl_make_current_surfaceless(cairo_egl_context_t *ctx)
const char *extensions;
extensions = eglQueryString(ctx->display, EGL_EXTENSIONS);
- if (!strstr(extensions, "EGL_KHR_surfaceless_opengl"))
+ if (strstr(extensions, "EGL_KHR_surfaceless_context") == NULL &&
+ strstr(extensions, "EGL_KHR_surfaceless_opengl") == NULL)
return FALSE;
+
if (!eglMakeCurrent(ctx->display,
EGL_NO_SURFACE, EGL_NO_SURFACE, ctx->context))
return FALSE;
@@ -174,7 +176,6 @@ cairo_egl_device_create (EGLDisplay dpy, EGLContext egl)
eglChooseConfig (dpy, config_attribs, &config, 1, &numConfigs);
ctx->dummy_surface = eglCreatePbufferSurface (dpy, config, attribs);
-
if (ctx->dummy_surface == NULL) {
free (ctx);
return _cairo_gl_context_create_in_error (CAIRO_STATUS_NO_MEMORY);