From f1c9b5ab230cbb4124d8d476ae4886d05022adcb Mon Sep 17 00:00:00 2001 From: Ian Romanick Date: Sun, 14 Dec 2008 18:58:33 -0800 Subject: [PATCH] GLX: Changes resulting from changes to Mesa generator scripts / data Several recent Mesa commits (listed below) make modifications to the protocol generator data and scripts. This commit represents the changes to the generated files resulting from the previous changes. - 0f73302d24f4201813da2939742c5bcb6964b3b1 GLX: Fix protocol for glTexSubImage#D - 1709ab01ef24279c782e420568e9257b4b92b224 Return 0 as the request size when the pixels parameter is NULL - 63cca2ba10ce7dcc8481cfa4be3872dfc269dded GLX: Include glapi.h before glapitable.h This is the server-side part of the fix for bugzilla #11003. --- glx/dispatch.h | 2 ++ glx/glapi.h | 17 ++++++++++++++--- glx/glapitable.h | 1 - glx/glthread.c | 1 + glx/indirect_dispatch.c | 11 ++++------- glx/indirect_dispatch_swap.c | 11 ++++------- glx/indirect_reqsize.c | 3 +++ 7 files changed, 28 insertions(+), 18 deletions(-) diff --git a/glx/dispatch.h b/glx/dispatch.h index 712315608..f019aa6aa 100644 --- a/glx/dispatch.h +++ b/glx/dispatch.h @@ -28,6 +28,8 @@ #if !defined( _DISPATCH_H_ ) # define _DISPATCH_H_ + +#include "glapitable.h" /** * \file dispatch.h * Macros for handling GL dispatch tables. diff --git a/glx/glapi.h b/glx/glapi.h index ddfb1cffb..8f2cf6621 100644 --- a/glx/glapi.h +++ b/glx/glapi.h @@ -1,8 +1,8 @@ /* * Mesa 3-D graphics library - * Version: 6.5 + * Version: 7.1 * - * Copyright (C) 1999-2006 Brian Paul All Rights Reserved. + * Copyright (C) 1999-2008 Brian Paul All Rights Reserved. * * Permission is hereby granted, free of charge, to any person obtaining a * copy of this software and associated documentation files (the "Software"), @@ -44,12 +44,17 @@ #ifndef _GLAPI_H #define _GLAPI_H +#define GL_GLEXT_PROTOTYPES #include "GL/gl.h" -#include "glapitable.h" +#include "GL/glext.h" #include "glthread.h" +struct _glapi_table; + +typedef void (*_glapi_proc)(void); /* generic function pointer */ + typedef void (*_glapi_warning_func)(void *ctx, const char *str, ...); @@ -63,6 +68,12 @@ typedef void (*_glapi_warning_func)(void *ctx, const char *str, ...); #endif +/* + * Number of extension functions which we can dynamically add at runtime. + */ +#define MAX_EXTENSION_FUNCS 300 + + /** ** Define the GET_CURRENT_CONTEXT() macro. ** \param C local variable which will hold the current context. diff --git a/glx/glapitable.h b/glx/glapitable.h index 48941f559..5d9d40a8a 100644 --- a/glx/glapitable.h +++ b/glx/glapitable.h @@ -37,7 +37,6 @@ # define GLAPIENTRYP GLAPIENTRY * #endif -typedef void (*_glapi_proc)(void); /* generic function pointer */ struct _glapi_table { diff --git a/glx/glthread.c b/glx/glthread.c index 813d6f9db..b818f4e26 100644 --- a/glx/glthread.c +++ b/glx/glthread.c @@ -34,6 +34,7 @@ #endif #include +#include #include "glthread.h" diff --git a/glx/indirect_dispatch.c b/glx/indirect_dispatch.c index 2afd3eb22..6547f5d96 100644 --- a/glx/indirect_dispatch.c +++ b/glx/indirect_dispatch.c @@ -36,8 +36,8 @@ #include "glxbyteorder.h" #include "indirect_util.h" #include "singlesize.h" -#include "glapitable.h" #include "glapi.h" +#include "glapitable.h" #include "glthread.h" #include "dispatch.h" @@ -2972,8 +2972,7 @@ void __glXDisp_PrioritizeTextures(GLbyte * pc) void __glXDisp_TexSubImage1D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 52); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 56); + const GLvoid * const pixels = (const GLvoid *) (pc + 56); __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); @@ -2996,8 +2995,7 @@ void __glXDisp_TexSubImage1D(GLbyte * pc) void __glXDisp_TexSubImage2D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 52); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 56); + const GLvoid * const pixels = (const GLvoid *) (pc + 56); __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); @@ -3773,8 +3771,7 @@ void __glXDisp_TexImage3D(GLbyte * pc) void __glXDisp_TexSubImage3D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 84); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 88); + const GLvoid * const pixels = (const GLvoid *) (pc + 88); __GLXpixel3DHeader * const hdr = (__GLXpixel3DHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); diff --git a/glx/indirect_dispatch_swap.c b/glx/indirect_dispatch_swap.c index f137cbe98..0b8c27cac 100644 --- a/glx/indirect_dispatch_swap.c +++ b/glx/indirect_dispatch_swap.c @@ -36,8 +36,8 @@ #include "glxbyteorder.h" #include "indirect_util.h" #include "singlesize.h" -#include "glapitable.h" #include "glapi.h" +#include "glapitable.h" #include "glthread.h" #include "dispatch.h" @@ -3092,8 +3092,7 @@ void __glXDispSwap_PrioritizeTextures(GLbyte * pc) void __glXDispSwap_TexSubImage1D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 52); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 56); + const GLvoid * const pixels = (const GLvoid *) (pc + 56); __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); @@ -3116,8 +3115,7 @@ void __glXDispSwap_TexSubImage1D(GLbyte * pc) void __glXDispSwap_TexSubImage2D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 52); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 56); + const GLvoid * const pixels = (const GLvoid *) (pc + 56); __GLXpixelHeader * const hdr = (__GLXpixelHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); @@ -3909,8 +3907,7 @@ void __glXDispSwap_TexImage3D(GLbyte * pc) void __glXDispSwap_TexSubImage3D(GLbyte * pc) { - const CARD32 ptr_is_null = *(CARD32 *)(pc + 84); - const GLvoid * const pixels = (const GLvoid *) (ptr_is_null != 0) ? NULL : (pc + 88); + const GLvoid * const pixels = (const GLvoid *) (pc + 88); __GLXpixel3DHeader * const hdr = (__GLXpixel3DHeader *)(pc); CALL_PixelStorei( GET_DISPATCH(), (GL_UNPACK_SWAP_BYTES, hdr->swapBytes) ); diff --git a/glx/indirect_reqsize.c b/glx/indirect_reqsize.c index 954eecd97..c47f01ee9 100644 --- a/glx/indirect_reqsize.c +++ b/glx/indirect_reqsize.c @@ -572,6 +572,9 @@ __glXTexImage3DReqSize(const GLbyte *pc, Bool swap) type = bswap_32(type); } + if (*(CARD32 *) (pc + 76)) + return 0; + return __glXImageSize(format, type, target, width, height, depth, image_height, row_length, skip_images, skip_rows, alignment);