include/SDL_opengles2_gl2platform.h
author Ryan C. Gordon <icculus@icculus.org>
Thu, 28 May 2015 01:54:52 -0400
changeset 9671 0e1f57b051f4
parent 8808 da1e1d6e84c4
permissions -rw-r--r--
Windows GetBasePath should use GetModuleFileNameExW() and check for overflows.

Apparently you might get strange paths from GetModuleFileName(), such as
short path names or UNC filenames, so this avoids that problem. Since you have
to tapdance with linking different libraries and defining macros depending on
what Windows you plan to target, we dynamically load the API we need, which
works on all versions of Windows (on Win7, it'll load a compatibility wrapper
for the newer API location).

What a mess.

This also now does the right thing if there isn't enough space to store the
path, looping with a larger allocated buffer each try.

Fixes Bugzilla #2435.
     1 #ifndef __gl2platform_h_
     2 #define __gl2platform_h_
     3 
     4 /* $Revision: 10602 $ on $Date:: 2010-03-04 22:35:34 -0800 #$ */
     5 
     6 /*
     7  * This document is licensed under the SGI Free Software B License Version
     8  * 2.0. For details, see http://oss.sgi.com/projects/FreeB/ .
     9  */
    10 
    11 /* Platform-specific types and definitions for OpenGL ES 2.X  gl2.h
    12  *
    13  * Adopters may modify khrplatform.h and this file to suit their platform.
    14  * You are encouraged to submit all modifications to the Khronos group so that
    15  * they can be included in future versions of this file.  Please submit changes
    16  * by sending them to the public Khronos Bugzilla (http://khronos.org/bugzilla)
    17  * by filing a bug against product "OpenGL-ES" component "Registry".
    18  */
    19 
    20 /*#include <KHR/khrplatform.h>*/
    21 
    22 #ifndef GL_APICALL
    23 #define GL_APICALL  KHRONOS_APICALL
    24 #endif
    25 
    26 #ifndef GL_APIENTRY
    27 #define GL_APIENTRY KHRONOS_APIENTRY
    28 #endif
    29 
    30 #endif /* __gl2platform_h_ */