vlc | branch: master | Laurent Aimar <[email protected]> | Tue May 31 23:51:42 2011 +0200| [52cd14db263cbea391ac29629288a5987a6a6184] | committer: Laurent Aimar
Used the right function pointer prototype in opengl. It should fix at least the win32 segfaults. > http://git.videolan.org/gitweb.cgi/vlc.git/?a=commit;h=52cd14db263cbea391ac29629288a5987a6a6184 --- modules/video_output/opengl.c | 28 ++++++++++++++-------------- 1 files changed, 14 insertions(+), 14 deletions(-) diff --git a/modules/video_output/opengl.c b/modules/video_output/opengl.c index c963270..81b48d1 100644 --- a/modules/video_output/opengl.c +++ b/modules/video_output/opengl.c @@ -120,16 +120,16 @@ struct vout_display_opengl_t { GLfloat local_value[16][4]; /* fragment_program */ - void (*GenProgramsARB)(GLsizei, GLuint *); - void (*BindProgramARB)(GLenum, GLuint); - void (*ProgramStringARB)(GLenum, GLenum, GLsizei, const GLvoid *); - void (*DeleteProgramsARB)(GLsizei, const GLuint *); - void (*ProgramLocalParameter4fvARB)(GLenum, GLuint, const GLfloat *); + PFNGLGENPROGRAMSARBPROC GenProgramsARB; + PFNGLBINDPROGRAMARBPROC BindProgramARB; + PFNGLPROGRAMSTRINGARBPROC ProgramStringARB; + PFNGLDELETEPROGRAMSARBPROC DeleteProgramsARB; + PFNGLPROGRAMLOCALPARAMETER4FVARBPROC ProgramLocalParameter4fvARB; /* multitexture */ bool use_multitexture; - void (*ActiveTextureARB)(GLenum); - void (*MultiTexCoord2fARB)(GLenum, GLfloat, GLfloat); + PFNGLACTIVETEXTUREARBPROC ActiveTextureARB; + PFNGLMULTITEXCOORD2FARBPROC MultiTexCoord2fARB; }; static inline int GetAlignedSize(unsigned size) @@ -160,11 +160,11 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt, /* Load extensions */ bool supports_fp = false; if (strstr(extensions, "GL_ARB_fragment_program")) { - vgl->GenProgramsARB = (void (*)(GLsizei, GLuint *))vlc_gl_GetProcAddress(vgl->gl, "glGenProgramsARB"); - vgl->BindProgramARB = (void (*)(GLenum, GLuint))vlc_gl_GetProcAddress(vgl->gl, "glBindProgramARB"); - vgl->ProgramStringARB = (void (*)(GLenum, GLenum, GLsizei, const GLvoid *))vlc_gl_GetProcAddress(vgl->gl, "glProgramStringARB"); - vgl->DeleteProgramsARB = (void (*)(GLsizei, const GLuint *))vlc_gl_GetProcAddress(vgl->gl, "glDeleteProgramsARB"); - vgl->ProgramLocalParameter4fvARB = (void (*)(GLenum, GLuint, const GLfloat *))vlc_gl_GetProcAddress(vgl->gl, "glProgramLocalParameter4fvARB"); + vgl->GenProgramsARB = (PFNGLGENPROGRAMSARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glGenProgramsARB"); + vgl->BindProgramARB = (PFNGLBINDPROGRAMARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glBindProgramARB"); + vgl->ProgramStringARB = (PFNGLPROGRAMSTRINGARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glProgramStringARB"); + vgl->DeleteProgramsARB = (PFNGLDELETEPROGRAMSARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glDeleteProgramsARB"); + vgl->ProgramLocalParameter4fvARB = (PFNGLPROGRAMLOCALPARAMETER4FVARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glProgramLocalParameter4fvARB"); supports_fp = vgl->GenProgramsARB && vgl->BindProgramARB && @@ -176,8 +176,8 @@ vout_display_opengl_t *vout_display_opengl_New(video_format_t *fmt, bool supports_multitexture = false; GLint max_texture_units = 0; if (strstr(extensions, "GL_ARB_multitexture")) { - vgl->ActiveTextureARB = (void (*)(GLenum))vlc_gl_GetProcAddress(vgl->gl, "glActiveTextureARB"); - vgl->MultiTexCoord2fARB = (void (*)(GLenum, GLfloat, GLfloat))vlc_gl_GetProcAddress(vgl->gl, "glMultiTexCoord2fARB"); + vgl->ActiveTextureARB = (PFNGLACTIVETEXTUREARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glActiveTextureARB"); + vgl->MultiTexCoord2fARB = (PFNGLMULTITEXCOORD2FARBPROC)vlc_gl_GetProcAddress(vgl->gl, "glMultiTexCoord2fARB"); supports_multitexture = vgl->ActiveTextureARB && vgl->MultiTexCoord2fARB; _______________________________________________ vlc-commits mailing list [email protected] http://mailman.videolan.org/listinfo/vlc-commits
