forked from enlightenment/efl
i don't believe that we forgot that desktopgl has an unload for shader
compiler... use it. minor minor minor. SVN revision: 70374
This commit is contained in:
parent
17b305b321
commit
bbf95e48b7
|
@ -631,6 +631,7 @@ extern void (*glsym_glDeleteFramebuffers) (GLsizei a, const GLuint *b);
|
||||||
extern void (*glsym_glGetProgramBinary) (GLuint a, GLsizei b, GLsizei *c, GLenum *d, void *e);
|
extern void (*glsym_glGetProgramBinary) (GLuint a, GLsizei b, GLsizei *c, GLenum *d, void *e);
|
||||||
extern void (*glsym_glProgramBinary) (GLuint a, GLenum b, const void *c, GLint d);
|
extern void (*glsym_glProgramBinary) (GLuint a, GLenum b, const void *c, GLint d);
|
||||||
extern void (*glsym_glProgramParameteri) (GLuint a, GLuint b, GLint d);
|
extern void (*glsym_glProgramParameteri) (GLuint a, GLuint b, GLint d);
|
||||||
|
extern void (*glsym_glReleaseShaderCompiler)(void);
|
||||||
|
|
||||||
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
||||||
extern void *(*secsym_eglCreateImage) (void *a, void *b, GLenum c, void *d, const int *e);
|
extern void *(*secsym_eglCreateImage) (void *a, void *b, GLenum c, void *d, const int *e);
|
||||||
|
|
|
@ -21,6 +21,7 @@ void (*glsym_glDeleteFramebuffers) (GLsizei a, const GLuint *b) = NULL;
|
||||||
void (*glsym_glGetProgramBinary) (GLuint a, GLsizei b, GLsizei *c, GLenum *d, void *e) = NULL;
|
void (*glsym_glGetProgramBinary) (GLuint a, GLsizei b, GLsizei *c, GLenum *d, void *e) = NULL;
|
||||||
void (*glsym_glProgramBinary) (GLuint a, GLenum b, const void *c, GLint d) = NULL;
|
void (*glsym_glProgramBinary) (GLuint a, GLenum b, const void *c, GLint d) = NULL;
|
||||||
void (*glsym_glProgramParameteri) (GLuint a, GLuint b, GLint d) = NULL;
|
void (*glsym_glProgramParameteri) (GLuint a, GLuint b, GLint d) = NULL;
|
||||||
|
void (*glsym_glReleaseShaderCompiler)(void) = NULL;
|
||||||
|
|
||||||
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
||||||
// just used for finding symbols :)
|
// just used for finding symbols :)
|
||||||
|
@ -94,6 +95,10 @@ gl_symbols(void)
|
||||||
FINDSYM(glsym_glProgramParameteri, "glProgramParameteriEXT", glsym_func_void);
|
FINDSYM(glsym_glProgramParameteri, "glProgramParameteriEXT", glsym_func_void);
|
||||||
FINDSYM(glsym_glProgramParameteri, "glProgramParameteriARB", glsym_func_void);
|
FINDSYM(glsym_glProgramParameteri, "glProgramParameteriARB", glsym_func_void);
|
||||||
|
|
||||||
|
FINDSYM(glsym_glReleaseShaderCompiler, "glReleaseShaderCompiler", glsym_func_void);
|
||||||
|
FINDSYM(glsym_glReleaseShaderCompiler, "glReleaseShaderCompilerEXT", glsym_func_void);
|
||||||
|
FINDSYM(glsym_glReleaseShaderCompiler, "glReleaseShaderCompilerARB", glsym_func_void);
|
||||||
|
|
||||||
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
||||||
#undef FINDSYM
|
#undef FINDSYM
|
||||||
#define FINDSYM(dst, sym, typ) \
|
#define FINDSYM(dst, sym, typ) \
|
||||||
|
|
|
@ -1250,6 +1250,8 @@ evas_gl_common_shader_program_init_done(void)
|
||||||
{
|
{
|
||||||
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
#if defined (GLES_VARIETY_S3C6410) || defined (GLES_VARIETY_SGX)
|
||||||
glReleaseShaderCompiler();
|
glReleaseShaderCompiler();
|
||||||
|
#else
|
||||||
|
if (glsym_glReleaseShaderCompiler) glsym_glReleaseShaderCompiler();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue