X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2FCommon%2Ffreeglut_ext.c;h=3c3c127ea6a983251895920def079725005700e3;hb=baa83df27ad3cf3dc200b9dbbdb9d67424d34427;hp=ef73481bc6802b64001f63b28b8fc687fb464cc3;hpb=afbdd3e54406166249c9cbe667e9f53ff6782e0c;p=freeglut diff --git a/src/Common/freeglut_ext.c b/src/Common/freeglut_ext.c index ef73481..3c3c127 100644 --- a/src/Common/freeglut_ext.c +++ b/src/Common/freeglut_ext.c @@ -29,7 +29,8 @@ #include #include "freeglut_internal.h" -extern SFG_Proc fghGetProcAddress( const char *procName ); +extern SFG_Proc fgPlatformGetProcAddress( const char *procName ); +extern GLUTproc fgPlatformGetGLUTProcAddress( const char *procName ); static GLUTproc fghGetGLUTProcAddress( const char* procName ) { @@ -111,9 +112,6 @@ static GLUTproc fghGetGLUTProcAddress( const char* procName ) CHECK_NAME(glutWindowStatusFunc); CHECK_NAME(glutKeyboardUpFunc); CHECK_NAME(glutSpecialUpFunc); -#if !defined(_WIN32_WCE) - CHECK_NAME(glutJoystickFunc); -#endif /* !defined(_WIN32_WCE) */ CHECK_NAME(glutSetColor); CHECK_NAME(glutGetColor); CHECK_NAME(glutCopyColormap); @@ -154,13 +152,7 @@ static GLUTproc fghGetGLUTProcAddress( const char* procName ) CHECK_NAME(glutReportErrors); CHECK_NAME(glutIgnoreKeyRepeat); CHECK_NAME(glutSetKeyRepeat); -#if !defined(_WIN32_WCE) - CHECK_NAME(glutForceJoystickFunc); - CHECK_NAME(glutGameModeString); - CHECK_NAME(glutEnterGameMode); - CHECK_NAME(glutLeaveGameMode); - CHECK_NAME(glutGameModeGet); -#endif /* !defined(_WIN32_WCE) */ + /* freeglut extensions */ CHECK_NAME(glutMainLoopEvent); CHECK_NAME(glutLeaveMainLoop); @@ -211,17 +203,6 @@ static GLUTproc fghGetGLUTProcAddress( const char* procName ) } -#if TARGET_HOST_POSIX_X11 -SFG_Proc fghGetProcAddress( const char *procName ) -{ -#if defined( GLX_ARB_get_proc_address ) - return (SFG_Proc)glXGetProcAddressARB( ( const GLubyte * )procName ); -#else - return NULL; -#endif -} -#endif - GLUTproc FGAPIENTRY glutGetProcAddress( const char *procName ) @@ -231,5 +212,10 @@ glutGetProcAddress( const char *procName ) /* Try GLUT functions first, then core GL functions */ p = fghGetGLUTProcAddress( procName ); - return ( p != NULL ) ? p : fghGetProcAddress( procName ); + + /* Some GLUT functions are platform-specific: */ + if ( !p ) + p = fgPlatformGetGLUTProcAddress( procName ); + + return ( p != NULL ) ? p : fgPlatformGetProcAddress( procName ); }