* everything.
*/
if (gr->egl_config != EGL_NO_CONFIG_KHR &&
- egl_config != gr->egl_config &&
- !gr->has_configless_context) {
+ egl_config != gr->egl_config) {
weston_log("Found an EGLConfig but it is not usable because "
"neither EGL_KHR_no_config_context nor "
"EGL_MESA_configless_context are supported by EGL.\n");
log_egl_info(gr->egl_display);
- gr->egl_config = gl_renderer_get_egl_config(gr, config_attribs,
- drm_formats,
- drm_formats_count);
- if (gr->egl_config == EGL_NO_CONFIG_KHR) {
- weston_log("failed to choose EGL config\n");
- goto fail_terminate;
- }
-
ec->renderer = &gr->base;
if (gl_renderer_setup_egl_extensions(ec) < 0)
goto fail_with_error;
+ if (!gr->has_configless_context) {
+ gr->egl_config = gl_renderer_get_egl_config(gr, config_attribs,
+ drm_formats,
+ drm_formats_count);
+ if (gr->egl_config == EGL_NO_CONFIG_KHR) {
+ weston_log("failed to choose EGL config\n");
+ goto fail_terminate;
+ }
+ }
+
ec->capabilities |= WESTON_CAP_ROTATION_ANY;
ec->capabilities |= WESTON_CAP_CAPTURE_YFLIP;
ec->capabilities |= WESTON_CAP_VIEW_CLIP_MASK;
{
struct gl_renderer *gr = get_renderer(ec);
const char *extensions;
- EGLConfig context_config;
EGLBoolean ret;
EGLint context_attribs[16] = {
assert(nattr < ARRAY_LENGTH(context_attribs));
context_attribs[nattr] = EGL_NONE;
- context_config = gr->egl_config;
-
- if (gr->has_configless_context)
- context_config = EGL_NO_CONFIG_KHR;
-
/* try to create an OpenGLES 3 context first */
context_attribs[1] = 3;
- gr->egl_context = eglCreateContext(gr->egl_display, context_config,
+ gr->egl_context = eglCreateContext(gr->egl_display, gr->egl_config,
EGL_NO_CONTEXT, context_attribs);
if (gr->egl_context == NULL) {
/* and then fallback to OpenGLES 2 */
context_attribs[1] = 2;
gr->egl_context = eglCreateContext(gr->egl_display,
- context_config,
+ gr->egl_config,
EGL_NO_CONTEXT,
context_attribs);
if (gr->egl_context == NULL) {