#include "g_glxglvnddispatchindices.h"
const int DI_FUNCTION_COUNT = DI_LAST_INDEX;
-int __glXDispatchTableIndices[DI_LAST_INDEX];
+/* Allocate an extra 'dummy' to ease lookup. See FindGLXFunction() */
+int __glXDispatchTableIndices[DI_LAST_INDEX + 1];
const __GLXapiExports *__glXGLVNDAPIExports;
const char * const __glXDispatchTableStrings[DI_LAST_INDEX] = {
#undef __FETCH_FUNCTION_PTR
-const void * const __glXDispatchFunctions[DI_LAST_INDEX] = {
+/* Allocate an extra 'dummy' to ease lookup. See FindGLXFunction() */
+const void * const __glXDispatchFunctions[DI_LAST_INDEX + 1] = {
#define __ATTRIB(field) \
[DI_##field] = (void *)dispatch_##field
__ATTRIB(GetFBConfigAttribSGIX),
__ATTRIB(GetFBConfigFromVisualSGIX),
__ATTRIB(GetSelectedEventSGIX),
-#if defined(GLX_SGI_video_sync)
__ATTRIB(GetVideoSyncSGI),
-#endif // defined(GLX_SGI_video_sync)
__ATTRIB(GetVisualFromFBConfigSGIX),
__ATTRIB(QueryContextInfoEXT),
__ATTRIB(QueryGLXPbufferSGIX),
__ATTRIB(ReleaseTexImageEXT),
__ATTRIB(SelectEventSGIX),
-#if defined(GLX_SGI_swap_control)
__ATTRIB(SwapIntervalSGI),
-#endif // defined(GLX_SGI_swap_control)
-#if defined(GLX_SGI_video_sync)
__ATTRIB(WaitVideoSyncSGI),
-#endif // defined(GLX_SGI_video_sync)
__ATTRIB(glXBindSwapBarrierSGIX),
__ATTRIB(glXCopySubBufferMESA),
__ATTRIB(glXCreateGLXPixmapMESA),
__ATTRIB(glXWaitForMscOML),
__ATTRIB(glXWaitForSbcOML),
+ [DI_LAST_INDEX] = NULL,
#undef __ATTRIB
};