gl: make surface and context readable by users

used by PCSX gles plugin
This commit is contained in:
notaz 2013-02-06 03:46:20 +02:00
parent e288d77607
commit 6fd09356f0
2 changed files with 16 additions and 0 deletions

9
gl.c
View file

@ -10,6 +10,10 @@ static EGLDisplay edpy;
static EGLSurface esfc;
static EGLContext ectxt;
/* for external flips */
void *gl_es_display;
void *gl_es_surface;
static int gl_have_error(const char *name)
{
GLenum e = glGetError();
@ -119,6 +123,8 @@ int gl_init(void *display, void *window, int *quirks)
if (gl_have_error("init"))
goto out;
gl_es_display = (void *)edpy;
gl_es_surface = (void *)esfc;
retval = 0;
out:
free(tmp_texture_mem);
@ -185,5 +191,8 @@ void gl_finish(void)
eglTerminate(edpy);
edpy = EGL_NO_DISPLAY;
gl_es_display = (void *)edpy;
gl_es_surface = (void *)esfc;
gl_platform_finish();
}

7
gl.h
View file

@ -4,6 +4,10 @@ int gl_init(void *display, void *window, int *quirks);
int gl_flip(const void *fb, int w, int h);
void gl_finish(void);
/* for external flips */
extern void *gl_es_display;
extern void *gl_es_surface;
#else
static __inline int gl_init(void *display, void *window, int *quirks)
@ -18,6 +22,9 @@ static __inline void gl_finish(void)
{
}
#define gl_es_display (void *)0
#define gl_es_surface (void *)0
#endif
#define GL_QUIRK_ACTIVATE_RECREATE 1