• Sam Lantinga's avatar
    Date: Sun, 11 May 2003 19:59:06 +0300 · 44a5555c
    Sam Lantinga authored
    From: Pasi K?rkk?inen
    Subject: [PATCH] fix SDL OpenGL segfault with DRI/Mesa drivers and Glew
    
    Hello!
    
    The attached patch fixes a bug in SDL which causes SDL to crash in
    X11_GL_Shutdown() if you are using DRI/Mesa drivers AND glew
    (http://glew.sf.net).
    
    The bug is caused by a namespace collision affecting dlsym() to fetch wrong
    pointer for glXReleaseBuffersMESA() (uninitialized pointer from glew because
    the extension is NOT supported by the driver) and then SDL calling it in
    X11_GL_Shutdown().
    
    SDL should check if the glXReleaseBuffersMESA() is really supported by the
    driver (from the extensions string) before calling it.
    
    Attached patch adds extension string parsing to check if
    glXReleaseBuffersMESA() is really supported (and this way
    prevents the segfault).
    
    Availability of the extensions should be _always_ checked from the
    extensions string rather than using dlsym()!
    
    Please add it to the next version of SDL.
    
    Thanks to gltron and author of glew to help fixing this.
    
    --HG--
    extra : convert_revision : svn%3Ac70aab31-4412-0410-b14c-859654838e24/trunk%40639
    44a5555c
Name
Last commit
Last update
docs Loading commit data...
include Loading commit data...
src Loading commit data...
test Loading commit data...
.cvsignore Loading commit data...
BUGS Loading commit data...
Borland.html Loading commit data...
Borland.zip Loading commit data...
COPYING Loading commit data...
CREDITS Loading commit data...
CWprojects.sea.bin Loading commit data...
EpocBuildFiles.zip Loading commit data...
INSTALL Loading commit data...
MPWmake.sea.bin Loading commit data...
Makefile.am Loading commit data...
Makefile.dc Loading commit data...
PBProjects.tar.gz Loading commit data...
README Loading commit data...
README-SDL.txt Loading commit data...
README.AmigaOS Loading commit data...
README.CVS Loading commit data...
README.DC Loading commit data...
README.Epoc Loading commit data...
README.MacOS Loading commit data...
README.MacOSX Loading commit data...
README.MiNT Loading commit data...
README.NanoX Loading commit data...
README.PicoGUI Loading commit data...
README.QNX Loading commit data...
README.Qtopia Loading commit data...
README.WinCE Loading commit data...
SDL.spec.in Loading commit data...
TODO Loading commit data...
VisualC.html Loading commit data...
VisualC.zip Loading commit data...
VisualC7.zip Loading commit data...
VisualCE.zip Loading commit data...
WhatsNew Loading commit data...
acinclude.m4 Loading commit data...
autogen.sh Loading commit data...
config.guess Loading commit data...
config.sub Loading commit data...
configure.in Loading commit data...
docs.html Loading commit data...
install-sh Loading commit data...
ltconfig Loading commit data...
ltmain.sh Loading commit data...
missing Loading commit data...
mkinstalldirs Loading commit data...
sdl-config.in Loading commit data...
sdl.m4 Loading commit data...
strip_fPIC.sh Loading commit data...