_eng_fn (*glsym_eglGetProcAddress)(const char *a) = NULL;
void *(*glsym_eglCreateImage)(EGLDisplay a, EGLContext b, EGLenum c, EGLClientBuffer d, const int *e) = NULL;
void (*glsym_eglDestroyImage)(EGLDisplay a, void *b) = NULL;
-void (*glsym_glEGLImageTargetTexture2DOES)(int a, void *b) = NULL;
+void (*glsym_glEGLImageTargetTexture2DOES)(int a, void *b) = NULL;
unsigned int (*glsym_eglSwapBuffersWithDamage)(EGLDisplay a, void *b, const EGLint *d, EGLint c) = NULL;
unsigned int (*glsym_eglQueryWaylandBufferWL)(EGLDisplay a, struct wl_resource *b, EGLint c, EGLint *d) = NULL;
+unsigned int (*glsym_eglSetDamageRegionKHR)(EGLDisplay a, EGLSurface b, EGLint *c, EGLint d) = NULL;
/* local function prototypes */
static void gl_symbols(void);
FINDSYM(glsym_eglSwapBuffersWithDamage, "eglSwapBuffersWithDamage",
glsym_func_uint);
+ FINDSYM(glsym_eglSetDamageRegionKHR, "eglSetDamageRegionKHR",
+ glsym_func_uint);
+
FINDSYM(glsym_eglQueryWaylandBufferWL, "eglQueryWaylandBufferWL",
glsym_func_uint);
{
_extn_have_buffer_age = 0;
glsym_eglSwapBuffersWithDamage = NULL;
+ glsym_eglSetDamageRegionKHR = NULL;
+ }
+ if (!strstr(str, "EGL_EXT_buffer_age"))
+ {
+ if (!strstr(str, "EGL_KHR_partial_update"))
+ _extn_have_buffer_age = 0;
}
- if (!strstr(str, "EGL_EXT_buffer_age")) _extn_have_buffer_age = 0;
+
+ if (!strstr(str, "EGL_KHR_partial_update"))
+ glsym_eglSetDamageRegionKHR = NULL;
+
if (!strstr(str, "EGL_EXT_swap_buffers_with_damage"))
glsym_eglSwapBuffersWithDamage = NULL;
}