st/dri: Support EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR/GLX_CONTEXT_DEBUG_BIT_ARB on ES...
[mesa.git] / src / mesa / drivers / dri / common / dri_util.c
index 02499f2daec07f951aaeee53e37bff5f1477a05e..d6e875fcfeb968aeadb9873574f0371bd449132c 100644 (file)
@@ -376,19 +376,17 @@ driCreateContextAttribs(__DRIscreen *screen, int api,
        return NULL;
     }
 
-    /* The EGL_KHR_create_context spec says:
+    /* The latest version of EGL_KHR_create_context spec says:
      *
-     *     "Flags are only defined for OpenGL context creation, and specifying
-     *     a flags value other than zero for other types of contexts,
-     *     including OpenGL ES contexts, will generate an error."
+     *     "If the EGL_CONTEXT_OPENGL_DEBUG_BIT_KHR flag bit is set in
+     *     EGL_CONTEXT_FLAGS_KHR, then a <debug context> will be created.
+     *     [...] This bit is supported for OpenGL and OpenGL ES contexts.
      *
-     * The GLX_EXT_create_context_es2_profile specification doesn't say
-     * anything specific about this case.  However, none of the known flags
-     * have any meaning in an ES context, so this seems safe.
+     * None of the other flags have any meaning in an ES context, so this seems safe.
      */
     if (mesa_api != API_OPENGL_COMPAT
         && mesa_api != API_OPENGL_CORE
-        && flags != 0) {
+        && (flags & ~__DRI_CTX_FLAG_DEBUG)) {
        *error = __DRI_CTX_ERROR_BAD_FLAG;
        return NULL;
     }