aboutsummaryrefslogtreecommitdiff
path: root/ui/egl-context.c
diff options
context:
space:
mode:
Diffstat (limited to 'ui/egl-context.c')
-rw-r--r--ui/egl-context.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/ui/egl-context.c b/ui/egl-context.c
index 2161969abe..78e6c7ab7c 100644
--- a/ui/egl-context.c
+++ b/ui/egl-context.c
@@ -6,15 +6,22 @@ QEMUGLContext qemu_egl_create_context(DisplayChangeListener *dcl,
QEMUGLParams *params)
{
EGLContext ctx;
- EGLint ctx_att[] = {
+ EGLint ctx_att_core[] = {
EGL_CONTEXT_OPENGL_PROFILE_MASK, EGL_CONTEXT_OPENGL_CORE_PROFILE_BIT,
EGL_CONTEXT_CLIENT_VERSION, params->major_ver,
EGL_CONTEXT_MINOR_VERSION_KHR, params->minor_ver,
EGL_NONE
};
+ EGLint ctx_att_gles[] = {
+ EGL_CONTEXT_CLIENT_VERSION, params->major_ver,
+ EGL_CONTEXT_MINOR_VERSION_KHR, params->minor_ver,
+ EGL_NONE
+ };
+ bool gles = (qemu_egl_mode == DISPLAYGL_MODE_ES);
ctx = eglCreateContext(qemu_egl_display, qemu_egl_config,
- eglGetCurrentContext(), ctx_att);
+ eglGetCurrentContext(),
+ gles ? ctx_att_gles : ctx_att_core);
return ctx;
}