Fixed bug 3940 - Add support for EGL_SURFACE_TYPE tomwardio Add support to be able to set EGL_SURFACE_TYPE bits when creating an EGL config. This is usefule when wanting to create pixel buffer surfaces in custom video drivers.
diff --git a/src/video/SDL_egl.c b/src/video/SDL_egl.c
index 43ba384..3b23053 100644
--- a/src/video/SDL_egl.c
+++ b/src/video/SDL_egl.c
@@ -527,6 +527,11 @@ SDL_EGL_ChooseConfig(_THIS)
_this->egl_data->eglBindAPI(EGL_OPENGL_API);
}
+ if (_this->egl_data->egl_surfacetype) {
+ attribs[i++] = EGL_SURFACE_TYPE;
+ attribs[i++] = _this->egl_data->egl_surfacetype;
+ }
+
attribs[i++] = EGL_NONE;
if (_this->egl_data->eglChooseConfig(_this->egl_data->egl_display,
diff --git a/src/video/SDL_egl_c.h b/src/video/SDL_egl_c.h
index f727e66..37b9602 100644
--- a/src/video/SDL_egl_c.h
+++ b/src/video/SDL_egl_c.h
@@ -35,6 +35,7 @@ typedef struct SDL_EGL_VideoData
EGLDisplay egl_display;
EGLConfig egl_config;
int egl_swapinterval;
+ int egl_surfacetype;
EGLDisplay(EGLAPIENTRY *eglGetDisplay) (NativeDisplayType display);
EGLDisplay(EGLAPIENTRY *eglGetPlatformDisplay) (EGLenum platform,