Merge branch 'master' into my-XACE-SELINUX
This commit is contained in:
commit
e3d3d29db5
|
@ -359,7 +359,12 @@ __glXDRIbindTexImage(__GLXcontext *baseContext,
|
|||
if (pixmap->drawable.depth >= 24) {
|
||||
bpp = 4;
|
||||
format = GL_BGRA;
|
||||
type = GL_UNSIGNED_BYTE;
|
||||
type =
|
||||
#if X_BYTE_ORDER == X_LITTLE_ENDIAN
|
||||
GL_UNSIGNED_BYTE;
|
||||
#else
|
||||
GL_UNSIGNED_INT_8_8_8_8_REV;
|
||||
#endif
|
||||
} else {
|
||||
bpp = 2;
|
||||
format = GL_RGB;
|
||||
|
|
|
@ -2756,6 +2756,31 @@ int __glXDisp_AreTexturesResident(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_AreTexturesResidentEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
||||
GLboolean retval;
|
||||
GLboolean answerBuffer[200];
|
||||
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
|
||||
retval = CALL_AreTexturesResident( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)(pc + 4),
|
||||
residences
|
||||
) );
|
||||
__glXSendReply(cl->client, residences, n, 1, GL_TRUE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDisp_CopyTexImage1D(GLbyte * pc)
|
||||
{
|
||||
CALL_CopyTexImage1D( GET_DISPATCH(), (
|
||||
|
@ -2810,6 +2835,26 @@ void __glXDisp_CopyTexSubImage2D(GLbyte * pc)
|
|||
}
|
||||
|
||||
int __glXDisp_DeleteTextures(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
||||
CALL_DeleteTextures( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)(pc + 4)
|
||||
) );
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_DeleteTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
|
@ -2852,6 +2897,29 @@ int __glXDisp_GenTextures(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GenTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
||||
GLuint answerBuffer[200];
|
||||
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
CALL_GenTextures( GET_DISPATCH(), (
|
||||
n,
|
||||
textures
|
||||
) );
|
||||
__glXSendReply(cl->client, textures, n, 4, GL_TRUE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_IsTexture(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -2871,6 +2939,25 @@ int __glXDisp_IsTexture(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_IsTextureEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
GLboolean retval;
|
||||
retval = CALL_IsTexture( GET_DISPATCH(), (
|
||||
*(GLuint *)(pc + 0)
|
||||
) );
|
||||
__glXSendReply(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDisp_PrioritizeTextures(GLbyte * pc)
|
||||
{
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
@ -3039,6 +3126,35 @@ int __glXDisp_GetColorTableParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableParameterfvSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterfv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3068,6 +3184,35 @@ int __glXDisp_GetColorTableParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableParameterivSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameteriv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDisp_ColorSubTable(GLbyte * pc)
|
||||
{
|
||||
const GLvoid * const data = (const GLvoid *) (pc + 40);
|
||||
|
@ -3244,6 +3389,35 @@ int __glXDisp_GetConvolutionParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetConvolutionParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetConvolutionParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetConvolutionParameterfv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetConvolutionParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3273,6 +3447,35 @@ int __glXDisp_GetConvolutionParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetConvolutionParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetConvolutionParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogramParameterfv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3302,6 +3505,35 @@ int __glXDisp_GetHistogramParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogramParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetHistogramParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetHistogramParameterfv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogramParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3331,6 +3563,35 @@ int __glXDisp_GetHistogramParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogramParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetHistogramParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetHistogramParameteriv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmaxParameterfv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3360,6 +3621,35 @@ int __glXDisp_GetMinmaxParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmaxParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetMinmaxParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetMinmaxParameterfv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmaxParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3389,6 +3679,35 @@ int __glXDisp_GetMinmaxParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmaxParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetMinmaxParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetMinmaxParameteriv( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDisp_Histogram(GLbyte * pc)
|
||||
{
|
||||
CALL_Histogram( GET_DISPATCH(), (
|
||||
|
@ -4414,131 +4733,6 @@ void __glXDisp_DrawBuffersARB(GLbyte * pc)
|
|||
) );
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableParameterfvSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterfvSGI_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterfvSGI( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableParameterivSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = *(GLenum *)(pc + 4);
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterivSGI_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterivSGI( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
__glXSendReply(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_AreTexturesResidentEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
||||
GLboolean retval;
|
||||
GLboolean answerBuffer[200];
|
||||
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
|
||||
retval = CALL_AreTexturesResidentEXT( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)(pc + 4),
|
||||
residences
|
||||
) );
|
||||
__glXSendReply(cl->client, residences, n, 1, GL_TRUE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_GenTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = *(GLsizei *)(pc + 0);
|
||||
|
||||
GLuint answerBuffer[200];
|
||||
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
CALL_GenTexturesEXT( GET_DISPATCH(), (
|
||||
n,
|
||||
textures
|
||||
) );
|
||||
__glXSendReply(cl->client, textures, n, 4, GL_TRUE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDisp_IsTextureEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, req->contextTag, &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
GLboolean retval;
|
||||
retval = CALL_IsTextureEXT( GET_DISPATCH(), (
|
||||
*(GLuint *)(pc + 0)
|
||||
) );
|
||||
__glXSendReply(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDisp_SampleMaskSGIS(GLbyte * pc)
|
||||
{
|
||||
CALL_SampleMaskSGIS( GET_DISPATCH(), (
|
||||
|
|
|
@ -61,8 +61,6 @@ extern HIDDEN void __glXDisp_ActiveTextureARB(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_ActiveTextureARB(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_VertexAttrib4ubvNV(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_VertexAttrib4ubvNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameterfvSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameterfvSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetProgramNamedParameterdvNV(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetProgramNamedParameterdvNV(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Histogram(GLbyte * pc);
|
||||
|
@ -163,6 +161,8 @@ extern HIDDEN void __glXDisp_Color3sv(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_Color3sv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Vertex2dv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Vertex2dv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetVisualConfigs(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -251,6 +251,8 @@ extern HIDDEN void __glXDisp_Color3usv(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_Color3usv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_AreTexturesResident(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_AreTexturesResident(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_AreTexturesResidentEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_AreTexturesResidentEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_IsRenderbufferEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_IsRenderbufferEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_PointParameterfvEXT(GLbyte * pc);
|
||||
|
@ -319,6 +321,8 @@ extern HIDDEN int __glXDisp_CreateNewContext(struct __GLXclientStateRec *, GLbyt
|
|||
extern HIDDEN int __glXDispSwap_CreateNewContext(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMinmax(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmax(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMinmaxEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmaxEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetVertexAttribdvNV(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetVertexAttribdvNV(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Normal3fv(GLbyte * pc);
|
||||
|
@ -409,6 +413,8 @@ extern HIDDEN void __glXDisp_VertexAttrib1dvNV(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_VertexAttrib1dvNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GenTextures(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GenTextures(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GenTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GenTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_FramebufferTexture1DEXT(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_FramebufferTexture1DEXT(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetDrawableAttributes(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -469,6 +475,8 @@ extern HIDDEN void __glXDisp_CopyTexSubImage3D(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_CopyTexSubImage3D(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetColorTable(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTable(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetColorTableSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Indexiv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Indexiv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_CreateContext(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -477,6 +485,8 @@ extern HIDDEN void __glXDisp_CopyColorTable(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_CopyColorTable(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetHistogramParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogramParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetHistogramParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogramParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Frustum(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Frustum(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetString(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -493,6 +503,8 @@ extern HIDDEN void __glXDisp_VertexAttrib1dvARB(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_VertexAttrib1dvARB(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_DeleteTextures(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_DeleteTextures(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_DeleteTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_DeleteTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetTexLevelParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetTexLevelParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_ClearAccum(GLbyte * pc);
|
||||
|
@ -587,6 +599,8 @@ extern HIDDEN void __glXDisp_Color3dv(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_Color3dv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_IsTexture(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_IsTexture(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_IsTextureEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_IsTextureEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_DeleteQueriesARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_DeleteQueriesARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMapdv(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -617,6 +631,8 @@ extern HIDDEN int __glXDisp_GetVertexAttribdvARB(struct __GLXclientStateRec *, G
|
|||
extern HIDDEN int __glXDispSwap_GetVertexAttribdvARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetSeparableFilter(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetSeparableFilter(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetSeparableFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetSeparableFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_RequestResidentProgramsNV(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_RequestResidentProgramsNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_FeedbackBuffer(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -635,8 +651,6 @@ extern HIDDEN void __glXDisp_PolygonOffset(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_PolygonOffset(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_ExecuteProgramNV(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_ExecuteProgramNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameterivSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameterivSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Normal3dv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Normal3dv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_Lightf(GLbyte * pc);
|
||||
|
@ -685,6 +699,8 @@ extern HIDDEN int __glXDisp_SwapIntervalSGI(struct __GLXclientStateRec *, GLbyte
|
|||
extern HIDDEN int __glXDispSwap_SwapIntervalSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameterfvSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameterfvSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Bitmap(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Bitmap(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetTexLevelParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -725,6 +741,8 @@ extern HIDDEN int __glXDisp_ChangeDrawableAttributes(struct __GLXclientStateRec
|
|||
extern HIDDEN int __glXDispSwap_ChangeDrawableAttributes(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMinmaxParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmaxParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMinmaxParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmaxParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_PixelTransferf(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_PixelTransferf(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_CopyTexImage1D(GLbyte * pc);
|
||||
|
@ -755,6 +773,8 @@ extern HIDDEN void __glXDisp_ConvolutionParameterf(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_ConvolutionParameterf(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetColorTableParameterivSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableParameterivSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_ReleaseTexImageEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_ReleaseTexImageEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_CallList(GLbyte * pc);
|
||||
|
@ -773,8 +793,6 @@ extern HIDDEN void __glXDisp_BindRenderbufferEXT(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_BindRenderbufferEXT(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_Vertex3sv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_Vertex3sv(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetColorTableSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetColorTableSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_BindTexImageEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_BindTexImageEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_ProgramLocalParameter4fvARB(GLbyte * pc);
|
||||
|
@ -797,10 +815,10 @@ extern HIDDEN void __glXDisp_TexGendv(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_TexGendv(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_ResetMinmax(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_ResetMinmax(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GenTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GenTexturesEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_VertexAttribs4dvNV(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_VertexAttribs4dvNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetMaterialfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -827,8 +845,12 @@ extern HIDDEN int __glXDisp_GetProgramLocalParameterdvARB(struct __GLXclientStat
|
|||
extern HIDDEN int __glXDispSwap_GetProgramLocalParameterdvARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetHistogramParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogramParameteriv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetHistogramParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogramParameterivEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionFilter(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetConvolutionFilterEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetProgramivARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetProgramivARB(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_BlendFuncSeparateEXT(GLbyte * pc);
|
||||
|
@ -841,8 +863,6 @@ extern HIDDEN void __glXDisp_EvalPoint1(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_EvalPoint1(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_PopMatrix(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_PopMatrix(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_AreTexturesResidentEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_AreTexturesResidentEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_MakeCurrentReadSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_MakeCurrentReadSGI(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetTexGeniv(struct __GLXclientStateRec *, GLbyte *);
|
||||
|
@ -861,6 +881,8 @@ extern HIDDEN int __glXDisp_GetTexGenfv(struct __GLXclientStateRec *, GLbyte *);
|
|||
extern HIDDEN int __glXDispSwap_GetTexGenfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetHistogram(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogram(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetHistogramEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetHistogramEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_ActiveStencilFaceEXT(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_ActiveStencilFaceEXT(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_Materialf(GLbyte * pc);
|
||||
|
@ -921,8 +943,6 @@ extern HIDDEN void __glXDisp_VertexAttrib4uivARB(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_VertexAttrib4uivARB(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_ClipPlane(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_ClipPlane(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_IsTextureEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_IsTextureEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetPixelMapuiv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetPixelMapuiv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_Indexfv(GLbyte * pc);
|
||||
|
@ -1005,6 +1025,8 @@ extern HIDDEN void __glXDisp_VertexAttribs4svNV(GLbyte * pc);
|
|||
extern HIDDEN void __glXDispSwap_VertexAttribs4svNV(GLbyte * pc);
|
||||
extern HIDDEN int __glXDisp_GetMinmaxParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmaxParameterfv(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDisp_GetMinmaxParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN int __glXDispSwap_GetMinmaxParameterfvEXT(struct __GLXclientStateRec *, GLbyte *);
|
||||
extern HIDDEN void __glXDisp_VertexAttrib1fvARB(GLbyte * pc);
|
||||
extern HIDDEN void __glXDispSwap_VertexAttrib1fvARB(GLbyte * pc);
|
||||
extern HIDDEN void __glXDisp_VertexAttribs1svNV(GLbyte * pc);
|
||||
|
|
|
@ -2887,6 +2887,31 @@ int __glXDispSwap_AreTexturesResident(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_AreTexturesResidentEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
||||
GLboolean retval;
|
||||
GLboolean answerBuffer[200];
|
||||
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
|
||||
retval = CALL_AreTexturesResident( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)bswap_32_array( (uint32_t *) (pc + 4), 0 ),
|
||||
residences
|
||||
) );
|
||||
__glXSendReplySwap(cl->client, residences, n, 1, GL_TRUE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDispSwap_CopyTexImage1D(GLbyte * pc)
|
||||
{
|
||||
CALL_CopyTexImage1D( GET_DISPATCH(), (
|
||||
|
@ -2941,6 +2966,26 @@ void __glXDispSwap_CopyTexSubImage2D(GLbyte * pc)
|
|||
}
|
||||
|
||||
int __glXDispSwap_DeleteTextures(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
||||
CALL_DeleteTextures( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)bswap_32_array( (uint32_t *) (pc + 4), 0 )
|
||||
) );
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_DeleteTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
|
@ -2984,6 +3029,30 @@ int __glXDispSwap_GenTextures(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GenTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
||||
GLuint answerBuffer[200];
|
||||
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
CALL_GenTextures( GET_DISPATCH(), (
|
||||
n,
|
||||
textures
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) textures, n );
|
||||
__glXSendReplySwap(cl->client, textures, n, 4, GL_TRUE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_IsTexture(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3003,6 +3072,25 @@ int __glXDispSwap_IsTexture(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_IsTextureEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
GLboolean retval;
|
||||
retval = CALL_IsTexture( GET_DISPATCH(), (
|
||||
(GLuint )bswap_CARD32 ( pc + 0 )
|
||||
) );
|
||||
__glXSendReplySwap(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDispSwap_PrioritizeTextures(GLbyte * pc)
|
||||
{
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
@ -3172,6 +3260,36 @@ int __glXDispSwap_GetColorTableParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableParameterfvSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterfv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3202,6 +3320,36 @@ int __glXDispSwap_GetColorTableParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableParameterivSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameteriv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDispSwap_ColorSubTable(GLbyte * pc)
|
||||
{
|
||||
const GLvoid * const data = (const GLvoid *) (pc + 40);
|
||||
|
@ -3379,6 +3527,36 @@ int __glXDispSwap_GetConvolutionParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetConvolutionParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetConvolutionParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetConvolutionParameterfv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetConvolutionParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3409,6 +3587,36 @@ int __glXDispSwap_GetConvolutionParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetConvolutionParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetConvolutionParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogramParameterfv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3439,6 +3647,36 @@ int __glXDispSwap_GetHistogramParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogramParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetHistogramParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetHistogramParameterfv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogramParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3469,6 +3707,36 @@ int __glXDispSwap_GetHistogramParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogramParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetHistogramParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetHistogramParameteriv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmaxParameterfv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3499,6 +3767,36 @@ int __glXDispSwap_GetMinmaxParameterfv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmaxParameterfvEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetMinmaxParameterfv_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetMinmaxParameterfv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmaxParameteriv(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXSingleReq * const req = (xGLXSingleReq *) pc;
|
||||
|
@ -3529,6 +3827,36 @@ int __glXDispSwap_GetMinmaxParameteriv(__GLXclientState *cl, GLbyte *pc)
|
|||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmaxParameterivEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetMinmaxParameteriv_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetMinmaxParameteriv( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDispSwap_Histogram(GLbyte * pc)
|
||||
{
|
||||
CALL_Histogram( GET_DISPATCH(), (
|
||||
|
@ -4566,134 +4894,6 @@ void __glXDispSwap_DrawBuffersARB(GLbyte * pc)
|
|||
) );
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableParameterfvSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterfvSGI_size(pname);
|
||||
GLfloat answerBuffer[200];
|
||||
GLfloat * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterfvSGI( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableParameterivSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLenum pname = (GLenum )bswap_ENUM ( pc + 4 );
|
||||
|
||||
const GLuint compsize = __glGetColorTableParameterivSGI_size(pname);
|
||||
GLint answerBuffer[200];
|
||||
GLint * params = __glXGetAnswerBuffer(cl, compsize * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
|
||||
if (params == NULL) return BadAlloc;
|
||||
__glXClearErrorOccured();
|
||||
|
||||
CALL_GetColorTableParameterivSGI( GET_DISPATCH(), (
|
||||
(GLenum )bswap_ENUM ( pc + 0 ),
|
||||
pname,
|
||||
params
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) params, compsize );
|
||||
__glXSendReplySwap(cl->client, params, compsize, 4, GL_FALSE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_AreTexturesResidentEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
||||
GLboolean retval;
|
||||
GLboolean answerBuffer[200];
|
||||
GLboolean * residences = __glXGetAnswerBuffer(cl, n, answerBuffer, sizeof(answerBuffer), 1);
|
||||
retval = CALL_AreTexturesResidentEXT( GET_DISPATCH(), (
|
||||
n,
|
||||
(const GLuint *)bswap_32_array( (uint32_t *) (pc + 4), 0 ),
|
||||
residences
|
||||
) );
|
||||
__glXSendReplySwap(cl->client, residences, n, 1, GL_TRUE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GenTexturesEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
const GLsizei n = (GLsizei )bswap_CARD32 ( pc + 0 );
|
||||
|
||||
GLuint answerBuffer[200];
|
||||
GLuint * textures = __glXGetAnswerBuffer(cl, n * 4, answerBuffer, sizeof(answerBuffer), 4);
|
||||
CALL_GenTexturesEXT( GET_DISPATCH(), (
|
||||
n,
|
||||
textures
|
||||
) );
|
||||
(void) bswap_32_array( (uint32_t *) textures, n );
|
||||
__glXSendReplySwap(cl->client, textures, n, 4, GL_TRUE, 0);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
int __glXDispSwap_IsTextureEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
xGLXVendorPrivateReq * const req = (xGLXVendorPrivateReq *) pc;
|
||||
int error;
|
||||
__GLXcontext * const cx = __glXForceCurrent(cl, bswap_CARD32( &req->contextTag ), &error);
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
if ( cx != NULL ) {
|
||||
GLboolean retval;
|
||||
retval = CALL_IsTextureEXT( GET_DISPATCH(), (
|
||||
(GLuint )bswap_CARD32 ( pc + 0 )
|
||||
) );
|
||||
__glXSendReplySwap(cl->client, dummy_answer, 0, 0, GL_FALSE, retval);
|
||||
error = Success;
|
||||
}
|
||||
|
||||
return error;
|
||||
}
|
||||
|
||||
void __glXDispSwap_SampleMaskSGIS(GLbyte * pc)
|
||||
{
|
||||
CALL_SampleMaskSGIS( GET_DISPATCH(), (
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -73,8 +73,10 @@ extern INTERNAL PURE FASTCALL GLint __glGetTexLevelParameterfv_size(GLenum);
|
|||
extern INTERNAL PURE FASTCALL GLint __glGetTexLevelParameteriv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetColorTableParameterfv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetColorTableParameteriv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetConvolutionParameterfv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetConvolutionParameteriv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint
|
||||
__glGetConvolutionParameterfv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint
|
||||
__glGetConvolutionParameteriv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetHistogramParameterfv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetHistogramParameteriv_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetMinmaxParameterfv_size(GLenum);
|
||||
|
@ -86,13 +88,12 @@ extern INTERNAL PURE FASTCALL GLint __glGetVertexAttribivARB_size(GLenum);
|
|||
extern INTERNAL PURE FASTCALL GLint __glGetQueryObjectivARB_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetQueryObjectuivARB_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetQueryivARB_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetColorTableParameterfvSGI_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetColorTableParameterivSGI_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetProgramivNV_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetVertexAttribdvNV_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetVertexAttribfvNV_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetVertexAttribivNV_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint __glGetFramebufferAttachmentParameterivEXT_size(GLenum);
|
||||
extern INTERNAL PURE FASTCALL GLint
|
||||
__glGetFramebufferAttachmentParameterivEXT_size(GLenum);
|
||||
|
||||
# undef PURE
|
||||
# undef FASTCALL
|
||||
|
|
|
@ -163,7 +163,7 @@ static const void *Single_function_table[112][2] = {
|
|||
/* [ 85] = 141 */ {__glXDisp_IsList, __glXDispSwap_IsList},
|
||||
/* [ 86] = 142 */ {__glXDisp_Flush, __glXDispSwap_Flush},
|
||||
/* [ 87] = 143 */ {__glXDisp_AreTexturesResident, __glXDispSwap_AreTexturesResident},
|
||||
/* [ 88] = 144 */ {NULL, NULL},
|
||||
/* [ 88] = 144 */ {__glXDisp_DeleteTextures, __glXDispSwap_DeleteTextures},
|
||||
/* [ 89] = 145 */ {__glXDisp_GenTextures, __glXDispSwap_GenTextures},
|
||||
/* [ 90] = 146 */ {__glXDisp_IsTexture, __glXDispSwap_IsTexture},
|
||||
/* [ 91] = 147 */ {__glXDisp_GetColorTable, __glXDispSwap_GetColorTable},
|
||||
|
@ -1232,12 +1232,12 @@ const struct __glXDispatchInfo Render_dispatch_info = {
|
|||
|
||||
/*****************************************************************/
|
||||
/* tree depth = 13 */
|
||||
static const int_fast16_t VendorPriv_dispatch_tree[158] = {
|
||||
static const int_fast16_t VendorPriv_dispatch_tree[155] = {
|
||||
/* [0] -> opcode range [0, 131072], node depth 1 */
|
||||
2,
|
||||
5,
|
||||
EMPTY_LEAF,
|
||||
122,
|
||||
119,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [5] -> opcode range [0, 32768], node depth 2 */
|
||||
|
@ -1254,14 +1254,14 @@ static const int_fast16_t VendorPriv_dispatch_tree[158] = {
|
|||
2,
|
||||
16,
|
||||
EMPTY_LEAF,
|
||||
81,
|
||||
78,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [16] -> opcode range [0, 2048], node depth 5 */
|
||||
2,
|
||||
21,
|
||||
EMPTY_LEAF,
|
||||
39,
|
||||
36,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [21] -> opcode range [0, 512], node depth 6 */
|
||||
|
@ -1286,298 +1286,301 @@ static const int_fast16_t VendorPriv_dispatch_tree[158] = {
|
|||
|
||||
/* [33] -> opcode range [0, 32], node depth 10 */
|
||||
1,
|
||||
36,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [36] -> opcode range [0, 16], node depth 11 */
|
||||
1,
|
||||
EMPTY_LEAF,
|
||||
LEAF(0),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [39] -> opcode range [1024, 1536], node depth 6 */
|
||||
/* [36] -> opcode range [1024, 1536], node depth 6 */
|
||||
2,
|
||||
41,
|
||||
EMPTY_LEAF,
|
||||
53,
|
||||
67,
|
||||
|
||||
/* [41] -> opcode range [1024, 1152], node depth 7 */
|
||||
1,
|
||||
44,
|
||||
EMPTY_LEAF,
|
||||
56,
|
||||
70,
|
||||
|
||||
/* [44] -> opcode range [1024, 1152], node depth 7 */
|
||||
/* [44] -> opcode range [1024, 1088], node depth 8 */
|
||||
1,
|
||||
47,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [47] -> opcode range [1024, 1088], node depth 8 */
|
||||
/* [47] -> opcode range [1024, 1056], node depth 9 */
|
||||
1,
|
||||
50,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [50] -> opcode range [1024, 1056], node depth 9 */
|
||||
/* [50] -> opcode range [1024, 1040], node depth 10 */
|
||||
1,
|
||||
53,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [53] -> opcode range [1024, 1040], node depth 10 */
|
||||
1,
|
||||
LEAF(8),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [56] -> opcode range [1280, 1408], node depth 7 */
|
||||
1,
|
||||
59,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [59] -> opcode range [1280, 1344], node depth 8 */
|
||||
2,
|
||||
64,
|
||||
LEAF(16),
|
||||
EMPTY_LEAF,
|
||||
67,
|
||||
|
||||
/* [64] -> opcode range [1280, 1296], node depth 9 */
|
||||
/* [53] -> opcode range [1280, 1408], node depth 7 */
|
||||
1,
|
||||
56,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [56] -> opcode range [1280, 1344], node depth 8 */
|
||||
2,
|
||||
61,
|
||||
LEAF(24),
|
||||
EMPTY_LEAF,
|
||||
64,
|
||||
|
||||
/* [61] -> opcode range [1280, 1296], node depth 9 */
|
||||
1,
|
||||
EMPTY_LEAF,
|
||||
LEAF(32),
|
||||
|
||||
/* [67] -> opcode range [1328, 1344], node depth 9 */
|
||||
1,
|
||||
LEAF(40),
|
||||
|
||||
/* [64] -> opcode range [1328, 1344], node depth 9 */
|
||||
1,
|
||||
LEAF(48),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [70] -> opcode range [1408, 1536], node depth 7 */
|
||||
/* [67] -> opcode range [1408, 1536], node depth 7 */
|
||||
1,
|
||||
70,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [70] -> opcode range [1408, 1472], node depth 8 */
|
||||
1,
|
||||
73,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [73] -> opcode range [1408, 1472], node depth 8 */
|
||||
1,
|
||||
76,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [76] -> opcode range [1408, 1440], node depth 9 */
|
||||
/* [73] -> opcode range [1408, 1440], node depth 9 */
|
||||
2,
|
||||
EMPTY_LEAF,
|
||||
LEAF(48),
|
||||
LEAF(56),
|
||||
LEAF(64),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [81] -> opcode range [4096, 6144], node depth 5 */
|
||||
/* [78] -> opcode range [4096, 6144], node depth 5 */
|
||||
2,
|
||||
83,
|
||||
EMPTY_LEAF,
|
||||
101,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [83] -> opcode range [4096, 4608], node depth 6 */
|
||||
1,
|
||||
86,
|
||||
EMPTY_LEAF,
|
||||
104,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [86] -> opcode range [4096, 4608], node depth 6 */
|
||||
/* [86] -> opcode range [4096, 4352], node depth 7 */
|
||||
1,
|
||||
89,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [89] -> opcode range [4096, 4352], node depth 7 */
|
||||
/* [89] -> opcode range [4096, 4224], node depth 8 */
|
||||
1,
|
||||
92,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [92] -> opcode range [4096, 4224], node depth 8 */
|
||||
/* [92] -> opcode range [4096, 4160], node depth 9 */
|
||||
1,
|
||||
95,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [95] -> opcode range [4096, 4160], node depth 9 */
|
||||
/* [95] -> opcode range [4096, 4128], node depth 10 */
|
||||
1,
|
||||
98,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [98] -> opcode range [4096, 4128], node depth 10 */
|
||||
1,
|
||||
101,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [101] -> opcode range [4096, 4112], node depth 11 */
|
||||
1,
|
||||
LEAF(64),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [104] -> opcode range [5120, 5632], node depth 6 */
|
||||
1,
|
||||
107,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [107] -> opcode range [5120, 5376], node depth 7 */
|
||||
1,
|
||||
110,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [110] -> opcode range [5120, 5248], node depth 8 */
|
||||
1,
|
||||
113,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [113] -> opcode range [5120, 5184], node depth 9 */
|
||||
1,
|
||||
EMPTY_LEAF,
|
||||
116,
|
||||
|
||||
/* [116] -> opcode range [5152, 5184], node depth 10 */
|
||||
1,
|
||||
119,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [119] -> opcode range [5152, 5168], node depth 11 */
|
||||
/* [98] -> opcode range [4096, 4112], node depth 11 */
|
||||
1,
|
||||
LEAF(72),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [122] -> opcode range [65536, 98304], node depth 2 */
|
||||
/* [101] -> opcode range [5120, 5632], node depth 6 */
|
||||
1,
|
||||
125,
|
||||
104,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [125] -> opcode range [65536, 81920], node depth 3 */
|
||||
/* [104] -> opcode range [5120, 5376], node depth 7 */
|
||||
1,
|
||||
128,
|
||||
107,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [128] -> opcode range [65536, 73728], node depth 4 */
|
||||
/* [107] -> opcode range [5120, 5248], node depth 8 */
|
||||
1,
|
||||
131,
|
||||
110,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [131] -> opcode range [65536, 69632], node depth 5 */
|
||||
/* [110] -> opcode range [5120, 5184], node depth 9 */
|
||||
1,
|
||||
134,
|
||||
EMPTY_LEAF,
|
||||
113,
|
||||
|
||||
/* [113] -> opcode range [5152, 5184], node depth 10 */
|
||||
1,
|
||||
116,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [134] -> opcode range [65536, 67584], node depth 6 */
|
||||
1,
|
||||
137,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [137] -> opcode range [65536, 66560], node depth 7 */
|
||||
1,
|
||||
140,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [140] -> opcode range [65536, 66048], node depth 8 */
|
||||
1,
|
||||
143,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [143] -> opcode range [65536, 65792], node depth 9 */
|
||||
1,
|
||||
146,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [146] -> opcode range [65536, 65664], node depth 10 */
|
||||
1,
|
||||
149,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [149] -> opcode range [65536, 65600], node depth 11 */
|
||||
1,
|
||||
152,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [152] -> opcode range [65536, 65568], node depth 12 */
|
||||
1,
|
||||
155,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [155] -> opcode range [65536, 65552], node depth 13 */
|
||||
/* [116] -> opcode range [5152, 5168], node depth 11 */
|
||||
1,
|
||||
LEAF(80),
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [119] -> opcode range [65536, 98304], node depth 2 */
|
||||
1,
|
||||
122,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [122] -> opcode range [65536, 81920], node depth 3 */
|
||||
1,
|
||||
125,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [125] -> opcode range [65536, 73728], node depth 4 */
|
||||
1,
|
||||
128,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [128] -> opcode range [65536, 69632], node depth 5 */
|
||||
1,
|
||||
131,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [131] -> opcode range [65536, 67584], node depth 6 */
|
||||
1,
|
||||
134,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [134] -> opcode range [65536, 66560], node depth 7 */
|
||||
1,
|
||||
137,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [137] -> opcode range [65536, 66048], node depth 8 */
|
||||
1,
|
||||
140,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [140] -> opcode range [65536, 65792], node depth 9 */
|
||||
1,
|
||||
143,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [143] -> opcode range [65536, 65664], node depth 10 */
|
||||
1,
|
||||
146,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [146] -> opcode range [65536, 65600], node depth 11 */
|
||||
1,
|
||||
149,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [149] -> opcode range [65536, 65568], node depth 12 */
|
||||
1,
|
||||
152,
|
||||
EMPTY_LEAF,
|
||||
|
||||
/* [152] -> opcode range [65536, 65552], node depth 13 */
|
||||
1,
|
||||
LEAF(88),
|
||||
EMPTY_LEAF,
|
||||
|
||||
};
|
||||
|
||||
static const void *VendorPriv_function_table[88][2] = {
|
||||
/* [ 0] = 8 */ {NULL, NULL},
|
||||
/* [ 1] = 9 */ {NULL, NULL},
|
||||
/* [ 2] = 10 */ {NULL, NULL},
|
||||
/* [ 3] = 11 */ {__glXDisp_AreTexturesResidentEXT, __glXDispSwap_AreTexturesResidentEXT},
|
||||
/* [ 4] = 12 */ {__glXDisp_DeleteTextures, __glXDispSwap_DeleteTextures},
|
||||
/* [ 5] = 13 */ {__glXDisp_GenTexturesEXT, __glXDispSwap_GenTexturesEXT},
|
||||
/* [ 6] = 14 */ {__glXDisp_IsTextureEXT, __glXDispSwap_IsTextureEXT},
|
||||
/* [ 7] = 15 */ {NULL, NULL},
|
||||
/* [ 8] = 1024 */ {__glXDisp_QueryContextInfoEXT, __glXDispSwap_QueryContextInfoEXT},
|
||||
/* [ 9] = 1025 */ {NULL, NULL},
|
||||
/* [ 10] = 1026 */ {NULL, NULL},
|
||||
/* [ 11] = 1027 */ {NULL, NULL},
|
||||
/* [ 12] = 1028 */ {NULL, NULL},
|
||||
/* [ 13] = 1029 */ {NULL, NULL},
|
||||
/* [ 14] = 1030 */ {NULL, NULL},
|
||||
/* [ 15] = 1031 */ {NULL, NULL},
|
||||
/* [ 16] = 1296 */ {__glXDisp_GetProgramEnvParameterfvARB, __glXDispSwap_GetProgramEnvParameterfvARB},
|
||||
/* [ 17] = 1297 */ {__glXDisp_GetProgramEnvParameterdvARB, __glXDispSwap_GetProgramEnvParameterdvARB},
|
||||
/* [ 18] = 1298 */ {__glXDisp_GetProgramivNV, __glXDispSwap_GetProgramivNV},
|
||||
/* [ 19] = 1299 */ {__glXDisp_GetProgramStringNV, __glXDispSwap_GetProgramStringNV},
|
||||
/* [ 20] = 1300 */ {__glXDisp_GetTrackMatrixivNV, __glXDispSwap_GetTrackMatrixivNV},
|
||||
/* [ 21] = 1301 */ {__glXDisp_GetVertexAttribdvARB, __glXDispSwap_GetVertexAttribdvARB},
|
||||
/* [ 22] = 1302 */ {__glXDisp_GetVertexAttribfvNV, __glXDispSwap_GetVertexAttribfvNV},
|
||||
/* [ 23] = 1303 */ {__glXDisp_GetVertexAttribivNV, __glXDispSwap_GetVertexAttribivNV},
|
||||
/* [ 24] = 1304 */ {__glXDisp_IsProgramNV, __glXDispSwap_IsProgramNV},
|
||||
/* [ 25] = 1305 */ {__glXDisp_GetProgramLocalParameterfvARB, __glXDispSwap_GetProgramLocalParameterfvARB},
|
||||
/* [ 26] = 1306 */ {__glXDisp_GetProgramLocalParameterdvARB, __glXDispSwap_GetProgramLocalParameterdvARB},
|
||||
/* [ 27] = 1307 */ {__glXDisp_GetProgramivARB, __glXDispSwap_GetProgramivARB},
|
||||
/* [ 28] = 1308 */ {__glXDisp_GetProgramStringARB, __glXDispSwap_GetProgramStringARB},
|
||||
/* [ 29] = 1309 */ {NULL, NULL},
|
||||
/* [ 30] = 1310 */ {__glXDisp_GetProgramNamedParameterfvNV, __glXDispSwap_GetProgramNamedParameterfvNV},
|
||||
/* [ 31] = 1311 */ {__glXDisp_GetProgramNamedParameterdvNV, __glXDispSwap_GetProgramNamedParameterdvNV},
|
||||
/* [ 32] = 1288 */ {NULL, NULL},
|
||||
/* [ 33] = 1289 */ {NULL, NULL},
|
||||
/* [ 34] = 1290 */ {NULL, NULL},
|
||||
/* [ 35] = 1291 */ {NULL, NULL},
|
||||
/* [ 36] = 1292 */ {NULL, NULL},
|
||||
/* [ 37] = 1293 */ {__glXDisp_AreProgramsResidentNV, __glXDispSwap_AreProgramsResidentNV},
|
||||
/* [ 38] = 1294 */ {__glXDisp_DeleteProgramsNV, __glXDispSwap_DeleteProgramsNV},
|
||||
/* [ 39] = 1295 */ {__glXDisp_GenProgramsNV, __glXDispSwap_GenProgramsNV},
|
||||
/* [ 40] = 1328 */ {NULL, NULL},
|
||||
/* [ 41] = 1329 */ {NULL, NULL},
|
||||
/* [ 42] = 1330 */ {__glXDisp_BindTexImageEXT, __glXDispSwap_BindTexImageEXT},
|
||||
/* [ 43] = 1331 */ {__glXDisp_ReleaseTexImageEXT, __glXDispSwap_ReleaseTexImageEXT},
|
||||
/* [ 44] = 1332 */ {NULL, NULL},
|
||||
/* [ 45] = 1333 */ {NULL, NULL},
|
||||
/* [ 46] = 1334 */ {NULL, NULL},
|
||||
/* [ 47] = 1335 */ {NULL, NULL},
|
||||
/* [ 48] = 1416 */ {NULL, NULL},
|
||||
/* [ 49] = 1417 */ {NULL, NULL},
|
||||
/* [ 50] = 1418 */ {NULL, NULL},
|
||||
/* [ 51] = 1419 */ {NULL, NULL},
|
||||
/* [ 52] = 1420 */ {NULL, NULL},
|
||||
/* [ 53] = 1421 */ {NULL, NULL},
|
||||
/* [ 54] = 1422 */ {__glXDisp_IsRenderbufferEXT, __glXDispSwap_IsRenderbufferEXT},
|
||||
/* [ 55] = 1423 */ {__glXDisp_GenRenderbuffersEXT, __glXDispSwap_GenRenderbuffersEXT},
|
||||
/* [ 56] = 1424 */ {__glXDisp_GetRenderbufferParameterivEXT, __glXDispSwap_GetRenderbufferParameterivEXT},
|
||||
/* [ 57] = 1425 */ {__glXDisp_IsFramebufferEXT, __glXDispSwap_IsFramebufferEXT},
|
||||
/* [ 58] = 1426 */ {__glXDisp_GenFramebuffersEXT, __glXDispSwap_GenFramebuffersEXT},
|
||||
/* [ 59] = 1427 */ {__glXDisp_CheckFramebufferStatusEXT, __glXDispSwap_CheckFramebufferStatusEXT},
|
||||
/* [ 60] = 1428 */ {__glXDisp_GetFramebufferAttachmentParameterivEXT, __glXDispSwap_GetFramebufferAttachmentParameterivEXT},
|
||||
/* [ 61] = 1429 */ {NULL, NULL},
|
||||
/* [ 62] = 1430 */ {NULL, NULL},
|
||||
/* [ 63] = 1431 */ {NULL, NULL},
|
||||
/* [ 64] = 4096 */ {NULL, NULL},
|
||||
/* [ 65] = 4097 */ {NULL, NULL},
|
||||
/* [ 66] = 4098 */ {__glXDisp_GetColorTableSGI, __glXDispSwap_GetColorTableSGI},
|
||||
/* [ 67] = 4099 */ {__glXDisp_GetColorTableParameterfvSGI, __glXDispSwap_GetColorTableParameterfvSGI},
|
||||
/* [ 68] = 4100 */ {__glXDisp_GetColorTableParameterivSGI, __glXDispSwap_GetColorTableParameterivSGI},
|
||||
/* [ 69] = 4101 */ {NULL, NULL},
|
||||
/* [ 70] = 4102 */ {NULL, NULL},
|
||||
/* [ 71] = 4103 */ {NULL, NULL},
|
||||
/* [ 72] = 5152 */ {NULL, NULL},
|
||||
/* [ 73] = 5153 */ {NULL, NULL},
|
||||
/* [ 74] = 5154 */ {__glXDisp_CopySubBufferMESA, __glXDispSwap_CopySubBufferMESA},
|
||||
/* [ 75] = 5155 */ {NULL, NULL},
|
||||
/* [ 76] = 5156 */ {NULL, NULL},
|
||||
/* [ 77] = 5157 */ {NULL, NULL},
|
||||
/* [ 78] = 5158 */ {NULL, NULL},
|
||||
/* [ 79] = 5159 */ {NULL, NULL},
|
||||
/* [ 80] = 65536 */ {__glXDisp_SwapIntervalSGI, __glXDispSwap_SwapIntervalSGI},
|
||||
/* [ 81] = 65537 */ {__glXDisp_MakeCurrentReadSGI, __glXDispSwap_MakeCurrentReadSGI},
|
||||
/* [ 82] = 65538 */ {NULL, NULL},
|
||||
/* [ 83] = 65539 */ {NULL, NULL},
|
||||
/* [ 84] = 65540 */ {__glXDisp_GetFBConfigsSGIX, __glXDispSwap_GetFBConfigsSGIX},
|
||||
/* [ 85] = 65541 */ {__glXDisp_CreateContextWithConfigSGIX, __glXDispSwap_CreateContextWithConfigSGIX},
|
||||
/* [ 86] = 65542 */ {__glXDisp_CreateGLXPixmapWithConfigSGIX, __glXDispSwap_CreateGLXPixmapWithConfigSGIX},
|
||||
/* [ 87] = 65543 */ {NULL, NULL},
|
||||
static const void *VendorPriv_function_table[96][2] = {
|
||||
/* [ 0] = 0 */ {NULL, NULL},
|
||||
/* [ 1] = 1 */ {__glXDisp_GetConvolutionFilterEXT, __glXDispSwap_GetConvolutionFilterEXT},
|
||||
/* [ 2] = 2 */ {__glXDisp_GetConvolutionParameterfvEXT, __glXDispSwap_GetConvolutionParameterfvEXT},
|
||||
/* [ 3] = 3 */ {__glXDisp_GetConvolutionParameterivEXT, __glXDispSwap_GetConvolutionParameterivEXT},
|
||||
/* [ 4] = 4 */ {__glXDisp_GetSeparableFilterEXT, __glXDispSwap_GetSeparableFilterEXT},
|
||||
/* [ 5] = 5 */ {__glXDisp_GetHistogramEXT, __glXDispSwap_GetHistogramEXT},
|
||||
/* [ 6] = 6 */ {__glXDisp_GetHistogramParameterfvEXT, __glXDispSwap_GetHistogramParameterfvEXT},
|
||||
/* [ 7] = 7 */ {__glXDisp_GetHistogramParameterivEXT, __glXDispSwap_GetHistogramParameterivEXT},
|
||||
/* [ 8] = 8 */ {__glXDisp_GetMinmaxEXT, __glXDispSwap_GetMinmaxEXT},
|
||||
/* [ 9] = 9 */ {__glXDisp_GetMinmaxParameterfvEXT, __glXDispSwap_GetMinmaxParameterfvEXT},
|
||||
/* [ 10] = 10 */ {__glXDisp_GetMinmaxParameterivEXT, __glXDispSwap_GetMinmaxParameterivEXT},
|
||||
/* [ 11] = 11 */ {__glXDisp_AreTexturesResidentEXT, __glXDispSwap_AreTexturesResidentEXT},
|
||||
/* [ 12] = 12 */ {__glXDisp_DeleteTexturesEXT, __glXDispSwap_DeleteTexturesEXT},
|
||||
/* [ 13] = 13 */ {__glXDisp_GenTexturesEXT, __glXDispSwap_GenTexturesEXT},
|
||||
/* [ 14] = 14 */ {__glXDisp_IsTextureEXT, __glXDispSwap_IsTextureEXT},
|
||||
/* [ 15] = 15 */ {NULL, NULL},
|
||||
/* [ 16] = 1024 */ {__glXDisp_QueryContextInfoEXT, __glXDispSwap_QueryContextInfoEXT},
|
||||
/* [ 17] = 1025 */ {NULL, NULL},
|
||||
/* [ 18] = 1026 */ {NULL, NULL},
|
||||
/* [ 19] = 1027 */ {NULL, NULL},
|
||||
/* [ 20] = 1028 */ {NULL, NULL},
|
||||
/* [ 21] = 1029 */ {NULL, NULL},
|
||||
/* [ 22] = 1030 */ {NULL, NULL},
|
||||
/* [ 23] = 1031 */ {NULL, NULL},
|
||||
/* [ 24] = 1296 */ {__glXDisp_GetProgramEnvParameterfvARB, __glXDispSwap_GetProgramEnvParameterfvARB},
|
||||
/* [ 25] = 1297 */ {__glXDisp_GetProgramEnvParameterdvARB, __glXDispSwap_GetProgramEnvParameterdvARB},
|
||||
/* [ 26] = 1298 */ {__glXDisp_GetProgramivNV, __glXDispSwap_GetProgramivNV},
|
||||
/* [ 27] = 1299 */ {__glXDisp_GetProgramStringNV, __glXDispSwap_GetProgramStringNV},
|
||||
/* [ 28] = 1300 */ {__glXDisp_GetTrackMatrixivNV, __glXDispSwap_GetTrackMatrixivNV},
|
||||
/* [ 29] = 1301 */ {__glXDisp_GetVertexAttribdvARB, __glXDispSwap_GetVertexAttribdvARB},
|
||||
/* [ 30] = 1302 */ {__glXDisp_GetVertexAttribfvNV, __glXDispSwap_GetVertexAttribfvNV},
|
||||
/* [ 31] = 1303 */ {__glXDisp_GetVertexAttribivNV, __glXDispSwap_GetVertexAttribivNV},
|
||||
/* [ 32] = 1304 */ {__glXDisp_IsProgramNV, __glXDispSwap_IsProgramNV},
|
||||
/* [ 33] = 1305 */ {__glXDisp_GetProgramLocalParameterfvARB, __glXDispSwap_GetProgramLocalParameterfvARB},
|
||||
/* [ 34] = 1306 */ {__glXDisp_GetProgramLocalParameterdvARB, __glXDispSwap_GetProgramLocalParameterdvARB},
|
||||
/* [ 35] = 1307 */ {__glXDisp_GetProgramivARB, __glXDispSwap_GetProgramivARB},
|
||||
/* [ 36] = 1308 */ {__glXDisp_GetProgramStringARB, __glXDispSwap_GetProgramStringARB},
|
||||
/* [ 37] = 1309 */ {NULL, NULL},
|
||||
/* [ 38] = 1310 */ {__glXDisp_GetProgramNamedParameterfvNV, __glXDispSwap_GetProgramNamedParameterfvNV},
|
||||
/* [ 39] = 1311 */ {__glXDisp_GetProgramNamedParameterdvNV, __glXDispSwap_GetProgramNamedParameterdvNV},
|
||||
/* [ 40] = 1288 */ {NULL, NULL},
|
||||
/* [ 41] = 1289 */ {NULL, NULL},
|
||||
/* [ 42] = 1290 */ {NULL, NULL},
|
||||
/* [ 43] = 1291 */ {NULL, NULL},
|
||||
/* [ 44] = 1292 */ {NULL, NULL},
|
||||
/* [ 45] = 1293 */ {__glXDisp_AreProgramsResidentNV, __glXDispSwap_AreProgramsResidentNV},
|
||||
/* [ 46] = 1294 */ {__glXDisp_DeleteProgramsNV, __glXDispSwap_DeleteProgramsNV},
|
||||
/* [ 47] = 1295 */ {__glXDisp_GenProgramsNV, __glXDispSwap_GenProgramsNV},
|
||||
/* [ 48] = 1328 */ {NULL, NULL},
|
||||
/* [ 49] = 1329 */ {NULL, NULL},
|
||||
/* [ 50] = 1330 */ {__glXDisp_BindTexImageEXT, __glXDispSwap_BindTexImageEXT},
|
||||
/* [ 51] = 1331 */ {__glXDisp_ReleaseTexImageEXT, __glXDispSwap_ReleaseTexImageEXT},
|
||||
/* [ 52] = 1332 */ {NULL, NULL},
|
||||
/* [ 53] = 1333 */ {NULL, NULL},
|
||||
/* [ 54] = 1334 */ {NULL, NULL},
|
||||
/* [ 55] = 1335 */ {NULL, NULL},
|
||||
/* [ 56] = 1416 */ {NULL, NULL},
|
||||
/* [ 57] = 1417 */ {NULL, NULL},
|
||||
/* [ 58] = 1418 */ {NULL, NULL},
|
||||
/* [ 59] = 1419 */ {NULL, NULL},
|
||||
/* [ 60] = 1420 */ {NULL, NULL},
|
||||
/* [ 61] = 1421 */ {NULL, NULL},
|
||||
/* [ 62] = 1422 */ {__glXDisp_IsRenderbufferEXT, __glXDispSwap_IsRenderbufferEXT},
|
||||
/* [ 63] = 1423 */ {__glXDisp_GenRenderbuffersEXT, __glXDispSwap_GenRenderbuffersEXT},
|
||||
/* [ 64] = 1424 */ {__glXDisp_GetRenderbufferParameterivEXT, __glXDispSwap_GetRenderbufferParameterivEXT},
|
||||
/* [ 65] = 1425 */ {__glXDisp_IsFramebufferEXT, __glXDispSwap_IsFramebufferEXT},
|
||||
/* [ 66] = 1426 */ {__glXDisp_GenFramebuffersEXT, __glXDispSwap_GenFramebuffersEXT},
|
||||
/* [ 67] = 1427 */ {__glXDisp_CheckFramebufferStatusEXT, __glXDispSwap_CheckFramebufferStatusEXT},
|
||||
/* [ 68] = 1428 */ {__glXDisp_GetFramebufferAttachmentParameterivEXT, __glXDispSwap_GetFramebufferAttachmentParameterivEXT},
|
||||
/* [ 69] = 1429 */ {NULL, NULL},
|
||||
/* [ 70] = 1430 */ {NULL, NULL},
|
||||
/* [ 71] = 1431 */ {NULL, NULL},
|
||||
/* [ 72] = 4096 */ {NULL, NULL},
|
||||
/* [ 73] = 4097 */ {NULL, NULL},
|
||||
/* [ 74] = 4098 */ {__glXDisp_GetColorTableSGI, __glXDispSwap_GetColorTableSGI},
|
||||
/* [ 75] = 4099 */ {__glXDisp_GetColorTableParameterfvSGI, __glXDispSwap_GetColorTableParameterfvSGI},
|
||||
/* [ 76] = 4100 */ {__glXDisp_GetColorTableParameterivSGI, __glXDispSwap_GetColorTableParameterivSGI},
|
||||
/* [ 77] = 4101 */ {NULL, NULL},
|
||||
/* [ 78] = 4102 */ {NULL, NULL},
|
||||
/* [ 79] = 4103 */ {NULL, NULL},
|
||||
/* [ 80] = 5152 */ {NULL, NULL},
|
||||
/* [ 81] = 5153 */ {NULL, NULL},
|
||||
/* [ 82] = 5154 */ {__glXDisp_CopySubBufferMESA, __glXDispSwap_CopySubBufferMESA},
|
||||
/* [ 83] = 5155 */ {NULL, NULL},
|
||||
/* [ 84] = 5156 */ {NULL, NULL},
|
||||
/* [ 85] = 5157 */ {NULL, NULL},
|
||||
/* [ 86] = 5158 */ {NULL, NULL},
|
||||
/* [ 87] = 5159 */ {NULL, NULL},
|
||||
/* [ 88] = 65536 */ {__glXDisp_SwapIntervalSGI, __glXDispSwap_SwapIntervalSGI},
|
||||
/* [ 89] = 65537 */ {__glXDisp_MakeCurrentReadSGI, __glXDispSwap_MakeCurrentReadSGI},
|
||||
/* [ 90] = 65538 */ {NULL, NULL},
|
||||
/* [ 91] = 65539 */ {NULL, NULL},
|
||||
/* [ 92] = 65540 */ {__glXDisp_GetFBConfigsSGIX, __glXDispSwap_GetFBConfigsSGIX},
|
||||
/* [ 93] = 65541 */ {__glXDisp_CreateContextWithConfigSGIX, __glXDispSwap_CreateContextWithConfigSGIX},
|
||||
/* [ 94] = 65542 */ {__glXDisp_CreateGLXPixmapWithConfigSGIX, __glXDispSwap_CreateGLXPixmapWithConfigSGIX},
|
||||
/* [ 95] = 65543 */ {NULL, NULL},
|
||||
};
|
||||
|
||||
const struct __glXDispatchInfo VendorPriv_dispatch_info = {
|
||||
|
|
|
@ -195,7 +195,7 @@ int __glXDisp_GetPolygonStipple(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
static int GetSeparableFilter(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize, compsize2;
|
||||
GLenum format, type, target;
|
||||
|
@ -206,12 +206,11 @@ int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0, height=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
target = *(GLenum *)(pc + 0);
|
||||
|
@ -220,8 +219,8 @@ int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
/* target must be SEPARABLE_2D, however I guess we can let the GL
|
||||
barf on this one.... */
|
||||
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (target, GL_CONVOLUTION_WIDTH, &width) );
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (target, GL_CONVOLUTION_HEIGHT, &height) );
|
||||
CALL_GetConvolutionParameteriv(GET_DISPATCH(), (target, GL_CONVOLUTION_WIDTH, &width));
|
||||
CALL_GetConvolutionParameteriv(GET_DISPATCH(), (target, GL_CONVOLUTION_HEIGHT, &height));
|
||||
/*
|
||||
* The two queries above might fail if we're in a state where queries
|
||||
* are illegal, but then width and height would still be zero anyway.
|
||||
|
@ -234,7 +233,7 @@ int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
compsize = __GLX_PAD(compsize);
|
||||
compsize2 = __GLX_PAD(compsize2);
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
CALL_PixelStorei(GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes));
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize + compsize2,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetSeparableFilter( GET_DISPATCH(), (
|
||||
|
@ -260,7 +259,22 @@ int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDisp_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetSeparableFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDisp_GetSeparableFilterEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetSeparableFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc,
|
||||
GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -271,22 +285,23 @@ int __glXDisp_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0, height=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
target = *(GLenum *)(pc + 0);
|
||||
swapBytes = *(GLboolean *)(pc + 12);
|
||||
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (target, GL_CONVOLUTION_WIDTH, &width) );
|
||||
CALL_GetConvolutionParameteriv(GET_DISPATCH(),
|
||||
(target, GL_CONVOLUTION_WIDTH, &width));
|
||||
if (target == GL_CONVOLUTION_1D) {
|
||||
height = 1;
|
||||
} else {
|
||||
CALL_GetConvolutionParameteriv( GET_DISPATCH(), (target, GL_CONVOLUTION_HEIGHT, &height) );
|
||||
CALL_GetConvolutionParameteriv(GET_DISPATCH(),
|
||||
(target, GL_CONVOLUTION_HEIGHT, &height));
|
||||
}
|
||||
/*
|
||||
* The two queries above might fail if we're in a state where queries
|
||||
|
@ -295,7 +310,7 @@ int __glXDisp_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
compsize = __glGetTexImage_size(target,1,format,type,width,height,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
CALL_PixelStorei(GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes));
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetConvolutionFilter( GET_DISPATCH(), (
|
||||
|
@ -319,7 +334,21 @@ int __glXDisp_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDisp_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetConvolutionFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDisp_GetConvolutionFilterEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetConvolutionFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetHistogram(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -330,19 +359,19 @@ int __glXDisp_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
target = *(GLenum *)(pc + 0);
|
||||
swapBytes = *(GLboolean *)(pc + 12);
|
||||
reset = *(GLboolean *)(pc + 13);
|
||||
|
||||
CALL_GetHistogramParameteriv( GET_DISPATCH(), (target, GL_HISTOGRAM_WIDTH, &width) );
|
||||
CALL_GetHistogramParameteriv(GET_DISPATCH(),
|
||||
(target, GL_HISTOGRAM_WIDTH, &width));
|
||||
/*
|
||||
* The one query above might fail if we're in a state where queries
|
||||
* are illegal, but then width would still be zero anyway.
|
||||
|
@ -350,10 +379,10 @@ int __glXDisp_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
|||
compsize = __glGetTexImage_size(target,1,format,type,width,1,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
CALL_PixelStorei(GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes));
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetHistogram( GET_DISPATCH(), (target, reset, format, type, answer) );
|
||||
CALL_GetHistogram(GET_DISPATCH(), (target, reset, format, type, answer));
|
||||
|
||||
if (__glXErrorOccured()) {
|
||||
__GLX_BEGIN_REPLY(0);
|
||||
|
@ -368,7 +397,21 @@ int __glXDisp_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDisp_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetHistogram(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDisp_GetHistogramEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetHistogram(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetMinmax(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -378,12 +421,11 @@ int __glXDisp_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
|||
int error;
|
||||
char *answer, answerBuffer[200];
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
target = *(GLenum *)(pc + 0);
|
||||
|
@ -393,10 +435,10 @@ int __glXDisp_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
|||
compsize = __glGetTexImage_size(target,1,format,type,2,1,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
CALL_PixelStorei(GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes));
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetMinmax( GET_DISPATCH(), (target, reset, format, type, answer) );
|
||||
CALL_GetMinmax(GET_DISPATCH(), (target, reset, format, type, answer));
|
||||
|
||||
if (__glXErrorOccured()) {
|
||||
__GLX_BEGIN_REPLY(0);
|
||||
|
@ -410,7 +452,21 @@ int __glXDisp_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDisp_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetMinmax(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDisp_GetMinmaxEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetMinmax(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetColorTable(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -421,18 +477,18 @@ int __glXDisp_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
target = *(GLenum *)(pc + 0);
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
swapBytes = *(GLboolean *)(pc + 12);
|
||||
|
||||
CALL_GetColorTableParameteriv( GET_DISPATCH(), (target, GL_COLOR_TABLE_WIDTH, &width) );
|
||||
CALL_GetColorTableParameteriv(GET_DISPATCH(),
|
||||
(target, GL_COLOR_TABLE_WIDTH, &width));
|
||||
/*
|
||||
* The one query above might fail if we're in a state where queries
|
||||
* are illegal, but then width would still be zero anyway.
|
||||
|
@ -440,7 +496,7 @@ int __glXDisp_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
|||
compsize = __glGetTexImage_size(target,1,format,type,width,1,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
CALL_PixelStorei(GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes));
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetColorTable( GET_DISPATCH(), (
|
||||
|
@ -463,55 +519,16 @@ int __glXDisp_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetColorTable(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDisp_GetColorTableSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
GLboolean swapBytes;
|
||||
__GLXcontext *cx;
|
||||
ClientPtr client = cl->client;
|
||||
int error;
|
||||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
target = *(GLenum *)(pc + 0);
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
swapBytes = *(GLboolean *)(pc + 12);
|
||||
|
||||
CALL_GetColorTableParameterivSGI( GET_DISPATCH(), (target, GL_COLOR_TABLE_WIDTH, &width) );
|
||||
/*
|
||||
* The one query above might fail if we're in a state where queries
|
||||
* are illegal, but then width would still be zero anyway.
|
||||
*/
|
||||
compsize = __glGetTexImage_size(target,1,format,type,width,1,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, swapBytes) );
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetColorTableSGI( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
*(GLenum *)(pc + 4),
|
||||
*(GLenum *)(pc + 8),
|
||||
answer
|
||||
) );
|
||||
|
||||
if (__glXErrorOccured()) {
|
||||
__GLX_BEGIN_REPLY(0);
|
||||
__GLX_SEND_HEADER();
|
||||
} else {
|
||||
__GLX_BEGIN_REPLY(compsize);
|
||||
((xGLXGetColorTableReply *)&__glXReply)->width = width;
|
||||
__GLX_SEND_HEADER();
|
||||
__GLX_SEND_VOID_ARRAY(compsize);
|
||||
}
|
||||
|
||||
return Success;
|
||||
return GetColorTable(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
|
|
@ -219,7 +219,7 @@ int __glXDispSwap_GetPolygonStipple(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
static int GetSeparableFilter(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize, compsize2;
|
||||
GLenum format, type, target;
|
||||
|
@ -231,12 +231,11 @@ int __glXDispSwap_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0, height=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
@ -291,7 +290,21 @@ int __glXDispSwap_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDispSwap_GetSeparableFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetSeparableFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetSeparableFilterEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetSeparableFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -303,12 +316,11 @@ int __glXDispSwap_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0, height=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
@ -357,7 +369,21 @@ int __glXDispSwap_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDispSwap_GetConvolutionFilter(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetConvolutionFilter(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetConvolutionFilterEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetConvolutionFilter(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetHistogram(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -369,12 +395,11 @@ int __glXDispSwap_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
@ -412,7 +437,21 @@ int __glXDispSwap_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDispSwap_GetHistogram(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetHistogram(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetHistogramEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetHistogram(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetMinmax(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -423,12 +462,11 @@ int __glXDispSwap_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
|||
__GLX_DECLARE_SWAP_VARIABLES;
|
||||
char *answer, answerBuffer[200];
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
@ -459,7 +497,21 @@ int __glXDispSwap_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
||||
int __glXDispSwap_GetMinmax(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetMinmax(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetMinmaxEXT(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
return GetMinmax(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
static int GetColorTable(__GLXclientState *cl, GLbyte *pc, GLXContextTag tag)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
|
@ -471,12 +523,11 @@ int __glXDispSwap_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
|||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
cx = __glXForceCurrent(cl, tag, &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_SINGLE_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
@ -518,61 +569,16 @@ int __glXDispSwap_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
|||
return Success;
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTable(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
const GLXContextTag tag = __GLX_GET_SINGLE_CONTEXT_TAG(pc);
|
||||
|
||||
return GetColorTable(cl, pc + __GLX_SINGLE_HDR_SIZE, tag);
|
||||
}
|
||||
|
||||
int __glXDispSwap_GetColorTableSGI(__GLXclientState *cl, GLbyte *pc)
|
||||
{
|
||||
GLint compsize;
|
||||
GLenum format, type, target;
|
||||
GLboolean swapBytes;
|
||||
__GLXcontext *cx;
|
||||
ClientPtr client = cl->client;
|
||||
int error;
|
||||
__GLX_DECLARE_SWAP_VARIABLES;
|
||||
char *answer, answerBuffer[200];
|
||||
GLint width=0;
|
||||
const GLXContextTag tag = __GLX_GET_VENDPRIV_CONTEXT_TAG(pc);
|
||||
|
||||
cx = __glXForceCurrent(cl, __GLX_GET_SINGLE_CONTEXT_TAG(pc), &error);
|
||||
if (!cx) {
|
||||
return error;
|
||||
}
|
||||
|
||||
pc += __GLX_VENDPRIV_HDR_SIZE;
|
||||
__GLX_SWAP_INT(pc+0);
|
||||
__GLX_SWAP_INT(pc+4);
|
||||
__GLX_SWAP_INT(pc+8);
|
||||
|
||||
format = *(GLenum *)(pc + 4);
|
||||
type = *(GLenum *)(pc + 8);
|
||||
target = *(GLenum *)(pc + 0);
|
||||
swapBytes = *(GLboolean *)(pc + 12);
|
||||
|
||||
CALL_GetColorTableParameterivSGI( GET_DISPATCH(), (target, GL_COLOR_TABLE_WIDTH, &width) );
|
||||
/*
|
||||
* The one query above might fail if we're in a state where queries
|
||||
* are illegal, but then width would still be zero anyway.
|
||||
*/
|
||||
compsize = __glGetTexImage_size(target,1,format,type,width,1,1);
|
||||
if (compsize < 0) compsize = 0;
|
||||
|
||||
CALL_PixelStorei( GET_DISPATCH(), (GL_PACK_SWAP_BYTES, !swapBytes) );
|
||||
__GLX_GET_ANSWER_BUFFER(answer,cl,compsize,1);
|
||||
__glXClearErrorOccured();
|
||||
CALL_GetColorTableSGI( GET_DISPATCH(), (
|
||||
*(GLenum *)(pc + 0),
|
||||
*(GLenum *)(pc + 4),
|
||||
*(GLenum *)(pc + 8),
|
||||
answer
|
||||
) );
|
||||
|
||||
if (__glXErrorOccured()) {
|
||||
__GLX_BEGIN_REPLY(0);
|
||||
__GLX_SWAP_REPLY_HEADER();
|
||||
} else {
|
||||
__GLX_BEGIN_REPLY(compsize);
|
||||
__GLX_SWAP_REPLY_HEADER();
|
||||
__GLX_SWAP_INT(&width);
|
||||
((xGLXGetColorTableReply *)&__glXReply)->width = width;
|
||||
__GLX_SEND_VOID_ARRAY(compsize);
|
||||
}
|
||||
|
||||
return Success;
|
||||
return GetColorTable(cl, pc + __GLX_VENDPRIV_HDR_SIZE, tag);
|
||||
}
|
||||
|
|
|
@ -301,7 +301,7 @@ typedef unsigned int *glyphPointer;
|
|||
#define StorePixels(o,p) dst[o] = p
|
||||
#define Loop dst += widthDst;
|
||||
#else
|
||||
#define StorePixels(o,p) *dst++ = (p)
|
||||
#define StorePixels(o,p) do { *dst = (p); dst++; } while (0)
|
||||
#define Loop dst += widthLeft;
|
||||
#endif
|
||||
|
||||
|
|
49
configure.ac
49
configure.ac
|
@ -82,7 +82,8 @@ AC_TYPE_PID_T
|
|||
dnl Checks for library functions.
|
||||
AC_FUNC_VPRINTF
|
||||
AC_CHECK_FUNCS([geteuid getuid link memmove memset mkstemp strchr strrchr \
|
||||
strtol getopt getopt_long vsnprintf walkcontext backtrace])
|
||||
strtol getopt getopt_long vsnprintf walkcontext backtrace \
|
||||
getisax])
|
||||
AC_FUNC_ALLOCA
|
||||
dnl Old HAS_* names used in os/*.c.
|
||||
AC_CHECK_FUNC([getdtablesize],
|
||||
|
@ -834,6 +835,7 @@ VENDOR_MAN_VERSION="Version ${VENDOR_VERSION_STRING}"
|
|||
|
||||
AC_DEFINE_DIR(COMPILEDDEFAULTFONTPATH, FONTPATH, [Default font path])
|
||||
AC_DEFINE_DIR(RGB_DB, RGBPATH, [Default RGB path])
|
||||
AC_DEFINE_DIR(BASE_FONT_PATH, FONTDIR, [Default base font path])
|
||||
AC_DEFINE_DIR(DRI_DRIVER_PATH, DRI_DRIVER_PATH, [Default DRI driver path])
|
||||
AC_DEFINE_UNQUOTED(XVENDORNAME, ["$VENDOR_STRING"], [Vendor name])
|
||||
AC_DEFINE_UNQUOTED(XVENDORNAMESHORT, ["$VENDOR_STRING_SHORT"], [Short vendor name])
|
||||
|
@ -885,9 +887,46 @@ PKG_CHECK_MODULES([XSERVERLIBS], [$REQUIRED_LIBS])
|
|||
|
||||
XSERVER_CFLAGS="${XSERVERCFLAGS_CFLAGS}"
|
||||
XSERVER_LIBS="${XSERVERLIBS_LIBS} ${SYS_LIBS} -lm"
|
||||
AC_SUBST([XSERVER_LIBS])
|
||||
AC_SUBST([SYS_LIBS])
|
||||
|
||||
AC_CHECK_FUNCS([clock_gettime], [have_clock_gettime=yes],
|
||||
[AC_CHECK_LIB([rt], [clock_gettime], [have_clock_gettime=-lrt],
|
||||
[have_clock_gettime=no])])
|
||||
|
||||
AC_MSG_CHECKING([for a useful monotonic clock ...])
|
||||
|
||||
if ! test "x$have_clock_gettime" = xno; then
|
||||
if ! test "x$have_clock_gettime" = xyes; then
|
||||
LIBS="$have_clock_gettime"
|
||||
else
|
||||
LIBS=""
|
||||
fi
|
||||
|
||||
AC_RUN_IFELSE([
|
||||
#define _POSIX_C_SOURCE 199309L
|
||||
#include <time.h>
|
||||
|
||||
int main(int argc, char *argv[]) {
|
||||
struct timespec tp;
|
||||
|
||||
if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
|
||||
return 0;
|
||||
else
|
||||
return 1;
|
||||
}
|
||||
], [MONOTONIC_CLOCK=yes], [MONOTONIC_CLOCK=no],
|
||||
[MONOTONIC_CLOCK="cross compiling"])
|
||||
else
|
||||
MONOTONIC_CLOCK=no
|
||||
fi
|
||||
|
||||
AC_MSG_RESULT([$MONOTONIC_CLOCK])
|
||||
|
||||
if test "x$MONOTONIC_CLOCK" = xyes; then
|
||||
AC_DEFINE(MONOTONIC_CLOCK, 1, [Have monotonic clock from clock_gettime()])
|
||||
XSERVER_LIBS="$XSERVER_LIBS $LIBS"
|
||||
fi
|
||||
|
||||
dnl Imake defines SVR4 on SVR4 systems, and many files check for it, so
|
||||
dnl we need to replicate that here until those can all be fixed
|
||||
AC_MSG_CHECKING([if SVR4 needs to be defined])
|
||||
|
@ -902,6 +941,8 @@ AC_MSG_RESULT([yes])], AC_MSG_RESULT([no]))
|
|||
XSERVER_CFLAGS="$XSERVER_CFLAGS $CORE_INCS $XEXT_INC $COMPOSITE_INC $DAMAGE_INC $FIXES_INC $XI_INC $MI_INC $MIEXT_SHADOW_INC $MIEXT_LAYER_INC $MIEXT_DAMAGE_INC $RENDER_INC $RANDR_INC $FB_INC"
|
||||
AC_DEFINE_UNQUOTED(X_BYTE_ORDER,[$ENDIAN],[Endian order])
|
||||
|
||||
AC_SUBST([XSERVER_LIBS])
|
||||
|
||||
dnl ---------------------------------------------------------------------------
|
||||
dnl DDX section.
|
||||
dnl ---------------------------------------------------------------------------
|
||||
|
@ -1593,8 +1634,8 @@ AC_SUBST(XORGCONFIG_DEP_LIBS)
|
|||
|
||||
dnl xorgcfg GUI configuration utility
|
||||
AC_ARG_ENABLE(xorgcfg, AS_HELP_STRING([--enable-xorgcfg],
|
||||
[Build xorgcfg GUI configuration utility (default: yes)]),
|
||||
[XORGCFG=$enableval],[XORGCFG=yes])
|
||||
[Build xorgcfg GUI configuration utility (default: no)]),
|
||||
[XORGCFG=$enableval],[XORGCFG=no])
|
||||
if test x$XORGCFG = xyes ; then
|
||||
PKG_CHECK_MODULES([XORGCFG_DEP],
|
||||
[xkbui >= 1.0.2 xkbfile xxf86misc xxf86vm xaw7 xmu xt xpm xext x11])
|
||||
|
|
|
@ -181,7 +181,7 @@ prints a usage message.
|
|||
causes all remaining command line arguments to be ignored.
|
||||
.TP 8
|
||||
.B \-maxbigreqsize \fIsize\fP
|
||||
sets the maxmium big request to
|
||||
sets the maximum big request to
|
||||
.I size
|
||||
MB.
|
||||
.TP 8
|
||||
|
@ -449,7 +449,7 @@ the text after the /; it is used to distinguish between instances of
|
|||
|
||||
<action> ::= a | i | e
|
||||
|
||||
<string> ::= <dbl quoted string> | <single quoted string> | <unqouted string>
|
||||
<string> ::= <dbl quoted string> | <single quoted string> | <unquoted string>
|
||||
|
||||
<dbl quoted string> ::= <space> " <not dqoute>* " <space>
|
||||
|
||||
|
|
25
fb/fbpict.c
25
fb/fbpict.c
|
@ -1435,6 +1435,10 @@ fbPictureInit (ScreenPtr pScreen, PictFormatPtr formats, int nformats)
|
|||
*/
|
||||
#if !defined(__amd64__) && !defined(__x86_64__)
|
||||
|
||||
#ifdef HAVE_GETISAX
|
||||
#include <sys/auxv.h>
|
||||
#endif
|
||||
|
||||
enum CPUFeatures {
|
||||
NoFeatures = 0,
|
||||
MMX = 0x1,
|
||||
|
@ -1445,7 +1449,23 @@ enum CPUFeatures {
|
|||
};
|
||||
|
||||
static unsigned int detectCPUFeatures(void) {
|
||||
unsigned int features = 0;
|
||||
unsigned int result;
|
||||
|
||||
#ifdef HAVE_GETISAX
|
||||
if (getisax(&result, 1)) {
|
||||
if (result & AV_386_CMOV)
|
||||
features |= CMOV;
|
||||
if (result & AV_386_MMX)
|
||||
features |= MMX;
|
||||
if (result & AV_386_AMD_MMX)
|
||||
features |= MMX_Extensions;
|
||||
if (result & AV_386_SSE)
|
||||
features |= SSE;
|
||||
if (result & AV_386_SSE2)
|
||||
features |= SSE2;
|
||||
}
|
||||
#else
|
||||
char vendor[13];
|
||||
vendor[0] = 0;
|
||||
vendor[12] = 0;
|
||||
|
@ -1454,7 +1474,8 @@ static unsigned int detectCPUFeatures(void) {
|
|||
* %esp here. We can't declare either one as clobbered
|
||||
* since they are special registers (%ebx is the "PIC
|
||||
* register" holding an offset to global data, %esp the
|
||||
* stack pointer), so we need to make sure they have their+ * original values when we access the output operands.
|
||||
* stack pointer), so we need to make sure they have their
|
||||
* original values when we access the output operands.
|
||||
*/
|
||||
__asm__ ("pushf\n"
|
||||
"pop %%eax\n"
|
||||
|
@ -1490,7 +1511,6 @@ static unsigned int detectCPUFeatures(void) {
|
|||
: "%eax", "%ecx", "%edx"
|
||||
);
|
||||
|
||||
unsigned int features = 0;
|
||||
if (result) {
|
||||
/* result now contains the standard feature bits */
|
||||
if (result & (1 << 15))
|
||||
|
@ -1524,6 +1544,7 @@ static unsigned int detectCPUFeatures(void) {
|
|||
features |= MMX_Extensions;
|
||||
}
|
||||
}
|
||||
#endif /* HAVE_GETISAX */
|
||||
return features;
|
||||
}
|
||||
|
||||
|
|
|
@ -1,3 +1,5 @@
|
|||
include $(top_srcdir)/cpprules.in
|
||||
|
||||
if DRI
|
||||
DRI_SUBDIR = dri
|
||||
endif
|
||||
|
@ -82,7 +84,23 @@ endif
|
|||
optionsdir = $(libdir)/X11
|
||||
dist_options_DATA = Options
|
||||
|
||||
BUILT_SOURCES = xorg.conf.example
|
||||
CLEAN = xorg.conf.example xorg.conf.example.pre
|
||||
EXTRA_DIST = xorgconf.cpp
|
||||
|
||||
CPP_FILES_FLAGS = \
|
||||
-DRGBPATH=\"$(RGB_DB)\" \
|
||||
-DLOCALFONTPATH="\"$(BASE_FONT_PATH)/local\"" \
|
||||
-DMISCFONTPATH="\"$(BASE_FONT_PATH)/misc\"" \
|
||||
-DT1FONTPATH="\"$(BASE_FONT_PATH)/Type1\"" \
|
||||
-DTRUETYPEFONTPATH="\"$(BASE_FONT_PATH)/TTF\"" \
|
||||
-DCIDFONTPATH="\"$(BASE_FONT_PATH)/CID\"" \
|
||||
-DDPI75FONTPATH="\"$(BASE_FONT_PATH)/75dpi\"" \
|
||||
-DDPI100FONTPATH="\"$(BASE_FONT_PATH)/100dpi\"" \
|
||||
-DMODULEPATH=\"$(DEFAULT_MODULE_PATH)\"
|
||||
|
||||
relink:
|
||||
rm -f Xorg && $(MAKE) Xorg
|
||||
|
||||
xorg.conf.example.pre: xorgconf.cpp
|
||||
cp $< $@
|
||||
|
|
|
@ -895,7 +895,7 @@ configServerFlags(XF86ConfFlagsPtr flagsconf, XF86OptionPtr layoutopts)
|
|||
xf86GetOptValBool(FlagOptions, FLAG_ALLOW_CLOSEDOWN_GRABS,
|
||||
&(xf86Info.grabInfo.allowClosedown));
|
||||
xf86GetOptValBool(FlagOptions, FLAG_IGNORE_ABI, &xf86Info.ignoreABI);
|
||||
if (&xf86Info.ignoreABI) {
|
||||
if (xf86Info.ignoreABI) {
|
||||
xf86Msg(X_CONFIG, "Ignoring ABI Version\n");
|
||||
}
|
||||
|
||||
|
|
|
@ -234,7 +234,6 @@ xf86SwitchMode(ScreenPtr pScreen, DisplayModePtr mode)
|
|||
|
||||
xf86EnterServerState(SETUP);
|
||||
Switched = (*pScr->SwitchMode)(pScr->scrnIndex, mode, 0);
|
||||
xf86EnterServerState(OPERATING);
|
||||
if (Switched) {
|
||||
pScr->currentMode = mode;
|
||||
|
||||
|
@ -269,6 +268,7 @@ xf86SwitchMode(ScreenPtr pScreen, DisplayModePtr mode)
|
|||
pScr->frameY1 = pScr->virtualY - 1;
|
||||
}
|
||||
}
|
||||
xf86EnterServerState(OPERATING);
|
||||
|
||||
if (pScr->AdjustFrame)
|
||||
(*pScr->AdjustFrame)(pScr->scrnIndex, pScr->frameX0, pScr->frameY0, 0);
|
||||
|
|
|
@ -1763,8 +1763,8 @@ xf86PrintBanner()
|
|||
"Bugs may be filed in the bugzilla at http://bugs.freedesktop.org/.\n"
|
||||
"Select the \"xorg\" product for bugs you find in this release.\n"
|
||||
"Before reporting bugs in pre-release versions please check the\n"
|
||||
"latest version in the X.Org Foundation CVS repository.\n"
|
||||
"See http://wiki.x.org/wiki/CvsPage for CVS access instructions.\n");
|
||||
"latest version in the X.Org Foundation git repository.\n"
|
||||
"See http://wiki.x.org/wiki/GitPage for git access instructions.\n");
|
||||
#endif
|
||||
ErrorF("\nX Window System Version %d.%d.%d",
|
||||
XORG_VERSION_MAJOR,
|
||||
|
|
|
@ -84,7 +84,7 @@ typedef enum {
|
|||
* mask is 0xFFFF0000.
|
||||
*/
|
||||
#define ABI_ANSIC_VERSION SET_ABI_VERSION(0, 3)
|
||||
#define ABI_VIDEODRV_VERSION SET_ABI_VERSION(1, 0)
|
||||
#define ABI_VIDEODRV_VERSION SET_ABI_VERSION(1, 1)
|
||||
#define ABI_XINPUT_VERSION SET_ABI_VERSION(0, 6)
|
||||
#define ABI_EXTENSION_VERSION SET_ABI_VERSION(0, 3)
|
||||
#define ABI_FONT_VERSION SET_ABI_VERSION(0, 5)
|
||||
|
|
|
@ -92,6 +92,7 @@
|
|||
#define PCI_VENDOR_TRITECH 0x1292
|
||||
#define PCI_VENDOR_NVIDIA_SGS 0x12D2
|
||||
#define PCI_VENDOR_VMWARE 0x15AD
|
||||
#define PCI_VENDOR_AST 0x1A03
|
||||
#define PCI_VENDOR_3DLABS 0x3D3D
|
||||
#define PCI_VENDOR_AVANCE_2 0x4005
|
||||
#define PCI_VENDOR_HERCULES 0x4843
|
||||
|
@ -358,6 +359,9 @@
|
|||
#define PCI_CHIP_RS350_7834 0x7834
|
||||
#define PCI_CHIP_RS350_7835 0x7835
|
||||
|
||||
/* ASPEED Technology (AST) */
|
||||
#define PCI_CHIP_AST2000 0x2000
|
||||
|
||||
/* Avance Logic */
|
||||
#define PCI_CHIP_ALG2064 0x2064
|
||||
#define PCI_CHIP_ALG2301 0x2301
|
||||
|
|
|
@ -974,6 +974,7 @@ xf86XVEnlistPortInWindow(WindowPtr pWin, XvPortRecPrivatePtr portPriv)
|
|||
if(!winPriv) {
|
||||
winPriv = xalloc(sizeof(XF86XVWindowRec));
|
||||
if(!winPriv) return BadAlloc;
|
||||
memset(winPriv, 0, sizeof(XF86XVWindowRec));
|
||||
winPriv->PortRec = portPriv;
|
||||
winPriv->next = PrivRoot;
|
||||
pWin->devPrivates[XF86XVWindowIndex].ptr = (pointer)winPriv;
|
||||
|
@ -1026,6 +1027,9 @@ xf86XVDestroyWindow(WindowPtr pWin)
|
|||
|
||||
pPriv->pDraw = NULL;
|
||||
tmp = WinPriv;
|
||||
if(WinPriv->pGC) {
|
||||
FreeGC(WinPriv->pGC, 0);
|
||||
}
|
||||
WinPriv = WinPriv->next;
|
||||
xfree(tmp);
|
||||
}
|
||||
|
@ -1118,6 +1122,8 @@ xf86XVClipNotify(WindowPtr pWin, int dx, int dy)
|
|||
while(WinPriv) {
|
||||
pPriv = WinPriv->PortRec;
|
||||
|
||||
if(!pPriv) goto next;
|
||||
|
||||
if(pPriv->pCompositeClip && pPriv->FreeCompositeClip)
|
||||
REGION_DESTROY(pScreen, pPriv->pCompositeClip);
|
||||
|
||||
|
@ -1148,6 +1154,7 @@ xf86XVClipNotify(WindowPtr pWin, int dx, int dy)
|
|||
}
|
||||
}
|
||||
|
||||
next:
|
||||
pPrev = WinPriv;
|
||||
WinPriv = WinPriv->next;
|
||||
}
|
||||
|
@ -1739,9 +1746,13 @@ xf86XVPutImage(
|
|||
REGION_UNINIT(pScreen, &VPReg);
|
||||
}
|
||||
|
||||
if(portPriv->pDraw) {
|
||||
/* If we are changing windows, unregister our port in the old window */
|
||||
if(portPriv->pDraw && (portPriv->pDraw != pDraw))
|
||||
xf86XVRemovePortFromWindow((WindowPtr)(portPriv->pDraw), portPriv);
|
||||
}
|
||||
|
||||
/* Register our port with the new window */
|
||||
ret = xf86XVEnlistPortInWindow((WindowPtr)pDraw, portPriv);
|
||||
if(ret != Success) goto PUT_IMAGE_BAILOUT;
|
||||
|
||||
if(!REGION_NOTEMPTY(pScreen, &ClipRegion)) {
|
||||
clippedAway = TRUE;
|
||||
|
@ -1772,7 +1783,6 @@ xf86XVPutImage(
|
|||
if((ret == Success) &&
|
||||
(portPriv->AdaptorRec->flags & VIDEO_OVERLAID_IMAGES)) {
|
||||
|
||||
xf86XVEnlistPortInWindow((WindowPtr)pDraw, portPriv);
|
||||
portPriv->isOn = XV_ON;
|
||||
portPriv->pDraw = pDraw;
|
||||
portPriv->drw_x = drw_x; portPriv->drw_y = drw_y;
|
||||
|
@ -1813,6 +1823,56 @@ xf86XVQueryImageAttributes(
|
|||
format->id, width, height, pitches, offsets);
|
||||
}
|
||||
|
||||
|
||||
_X_EXPORT void
|
||||
xf86XVFillKeyHelperDrawable (DrawablePtr pDraw, CARD32 key, RegionPtr clipboxes)
|
||||
{
|
||||
ScreenPtr pScreen = pDraw->pScreen;
|
||||
WindowPtr pWin = (WindowPtr)pDraw;
|
||||
XF86XVWindowPtr pPriv = GET_XF86XV_WINDOW(pWin);
|
||||
GCPtr pGC = NULL;
|
||||
XID pval[2];
|
||||
BoxPtr pbox = REGION_RECTS(clipboxes);
|
||||
int i, nbox = REGION_NUM_RECTS(clipboxes);
|
||||
xRectangle *rects;
|
||||
|
||||
if(!xf86Screens[pScreen->myNum]->vtSema) return;
|
||||
|
||||
if(pPriv)
|
||||
pGC = pPriv->pGC;
|
||||
|
||||
if(!pGC) {
|
||||
int status;
|
||||
pval[0] = key;
|
||||
pval[1] = IncludeInferiors;
|
||||
pGC = CreateGC(pDraw, GCForeground | GCSubwindowMode, pval, &status);
|
||||
if(!pGC) return;
|
||||
ValidateGC(pDraw, pGC);
|
||||
if (pPriv) pPriv->pGC = pGC;
|
||||
} else if (key != pGC->fgPixel){
|
||||
pval[0] = key;
|
||||
ChangeGC(pGC, GCForeground, pval);
|
||||
ValidateGC(pDraw, pGC);
|
||||
}
|
||||
|
||||
REGION_TRANSLATE(pDraw->pScreen, clipboxes, -pDraw->x, -pDraw->y);
|
||||
|
||||
rects = ALLOCATE_LOCAL(nbox * sizeof(xRectangle));
|
||||
|
||||
for(i = 0; i < nbox; i++, pbox++) {
|
||||
rects[i].x = pbox->x1;
|
||||
rects[i].y = pbox->y1;
|
||||
rects[i].width = pbox->x2 - pbox->x1;
|
||||
rects[i].height = pbox->y2 - pbox->y1;
|
||||
}
|
||||
|
||||
(*pGC->ops->PolyFillRect)(pDraw, pGC, nbox, rects);
|
||||
|
||||
if (!pPriv) FreeGC(pGC, 0);
|
||||
|
||||
DEALLOCATE_LOCAL(rects);
|
||||
}
|
||||
|
||||
_X_EXPORT void
|
||||
xf86XVFillKeyHelper (ScreenPtr pScreen, CARD32 key, RegionPtr clipboxes)
|
||||
{
|
||||
|
|
|
@ -232,6 +232,9 @@ void xf86XVFreeVideoAdaptorRec(XF86VideoAdaptorPtr ptr);
|
|||
void
|
||||
xf86XVFillKeyHelper (ScreenPtr pScreen, CARD32 key, RegionPtr clipboxes);
|
||||
|
||||
void
|
||||
xf86XVFillKeyHelperDrawable (DrawablePtr pDraw, CARD32 key, RegionPtr clipboxes);
|
||||
|
||||
Bool
|
||||
xf86XVClipVideoHelper(
|
||||
BoxPtr dst,
|
||||
|
|
|
@ -80,6 +80,7 @@ typedef struct {
|
|||
typedef struct _XF86XVWindowRec{
|
||||
XvPortRecPrivatePtr PortRec;
|
||||
struct _XF86XVWindowRec *next;
|
||||
GCPtr pGC;
|
||||
} XF86XVWindowRec, *XF86XVWindowPtr;
|
||||
|
||||
#endif /* _XF86XVPRIV_H_ */
|
||||
|
|
|
@ -1081,7 +1081,7 @@ Include the set of modes listed in the
|
|||
.B Modes
|
||||
section called
|
||||
.IR modesection-id.
|
||||
This make all of the modes defined in that section available for use by
|
||||
This makes all of the modes defined in that section available for use by
|
||||
this monitor.
|
||||
.TP 7
|
||||
.BI "Mode \*q" name \*q
|
||||
|
|
|
@ -625,6 +625,7 @@ _X_HIDDEN void *xfree86LookupTab[] = {
|
|||
SYMFUNC(xf86XVAllocateVideoAdaptorRec)
|
||||
SYMFUNC(xf86XVFreeVideoAdaptorRec)
|
||||
SYMFUNC(xf86XVFillKeyHelper)
|
||||
SYMFUNC(xf86XVFillKeyHelperDrawable)
|
||||
SYMFUNC(xf86XVClipVideoHelper)
|
||||
SYMFUNC(xf86XVCopyYUV12ToPacked)
|
||||
SYMFUNC(xf86XVCopyPacked)
|
||||
|
|
|
@ -56,6 +56,7 @@ endif
|
|||
if NEED_STRLCAT
|
||||
STRL_SRCS = $(top_srcdir)/os/strlcat.c $(top_srcdir)/os/strlcpy.c
|
||||
endif
|
||||
endif BUILD_XORGCFG
|
||||
|
||||
xorgcfg_SOURCES = \
|
||||
accessx.c \
|
||||
|
@ -95,10 +96,7 @@ xorgcfg_SOURCES = \
|
|||
xf86config.h \
|
||||
$(STRL_SRCS)
|
||||
|
||||
XBMdir = $(includedir)/X11/bitmaps
|
||||
XPMdir = $(includedir)/X11/pixmaps
|
||||
|
||||
XBM_DATA = \
|
||||
BITMAPS = \
|
||||
card.xbm \
|
||||
keyboard.xbm \
|
||||
monitor.xbm \
|
||||
|
@ -112,7 +110,7 @@ XBM_DATA = \
|
|||
shorter.xbm \
|
||||
taller.xbm
|
||||
|
||||
XPM_DATA = \
|
||||
PIXMAPS = \
|
||||
card.xpm \
|
||||
computer.xpm \
|
||||
keyboard.xpm \
|
||||
|
@ -122,6 +120,13 @@ XPM_DATA = \
|
|||
# Rules needed to cpp man page & app-defaults
|
||||
include $(top_srcdir)/cpprules.in
|
||||
|
||||
if BUILD_XORGCFG
|
||||
XBMdir = $(includedir)/X11/bitmaps
|
||||
XPMdir = $(includedir)/X11/pixmaps
|
||||
|
||||
XBM_DATA = $(BITMAPS)
|
||||
XPM_DATA = $(PIXMAPS)
|
||||
|
||||
# App default files (*.ad)
|
||||
|
||||
appdefaultdir = @APPDEFAULTDIR@
|
||||
|
@ -146,7 +151,6 @@ appman_DATA = $(appman_PRE:man=@APP_MAN_SUFFIX@)
|
|||
|
||||
all-local: $(appman_PRE) $(appman_DATA)
|
||||
|
||||
EXTRA_DIST = $(XBM_DATA) $(XPM_DATA) XOrgCfg.pre xorgcfg.man.pre
|
||||
BUILT_SOURCES = $(appman_PRE)
|
||||
CLEANFILES = $(APPDEFAULTFILES) $(BUILT_SOURCES) $(appman_DATA)
|
||||
|
||||
|
@ -156,4 +160,6 @@ SUFFIXES += .$(APP_MAN_SUFFIX) .man
|
|||
-rm -f $@
|
||||
$(LN_S) $< $@
|
||||
|
||||
endif
|
||||
endif BUILD_XORGCFG
|
||||
|
||||
EXTRA_DIST = $(BITMAPS) $(PIXMAPS) XOrgCfg.pre xorgcfg.man.pre
|
||||
|
|
|
@ -1128,6 +1128,7 @@ CardConfig(void)
|
|||
static char *xdrivers[] = {
|
||||
"apm",
|
||||
"ark",
|
||||
"ast",
|
||||
"ati",
|
||||
"r128",
|
||||
"radeon",
|
||||
|
|
|
@ -51,6 +51,11 @@ NAME ** Ark Logic (generic) [ark]
|
|||
SERVER SVGA
|
||||
DRIVER ark
|
||||
|
||||
NAME ** ASPEED Technology (generic) [ast]
|
||||
#CHIPSET ast
|
||||
SERVER SVGA
|
||||
DRIVER ast
|
||||
|
||||
NAME ** ATI (generic) [ati]
|
||||
#CHIPSET ati
|
||||
SERVER SVGA
|
||||
|
|
|
@ -54,12 +54,9 @@ XCOMM command (or a combination of both methods)
|
|||
|
||||
FontPath LOCALFONTPATH
|
||||
FontPath MISCFONTPATH
|
||||
FontPath DPI75USFONTPATH
|
||||
FontPath DPI100USFONTPATH
|
||||
FontPath T1FONTPATH
|
||||
FontPath TRUETYPEFONTPATH
|
||||
FontPath TRUETYPEFONTPATH
|
||||
FontPath CIDFONTPATH
|
||||
FontPath SPFONTPATH
|
||||
FontPath DPI75FONTPATH
|
||||
FontPath DPI100FONTPATH
|
||||
|
||||
|
|
|
@ -112,6 +112,9 @@
|
|||
/* Define to 1 if you have the `geteuid' function. */
|
||||
#undef HAVE_GETEUID
|
||||
|
||||
/* Define to 1 if you have the `getisax' function. */
|
||||
#undef HAVE_GETISAX
|
||||
|
||||
/* Define to 1 if you have the `getopt' function. */
|
||||
#undef HAVE_GETOPT
|
||||
|
||||
|
@ -445,4 +448,7 @@
|
|||
/* Define to 1 if modules should avoid the libcwrapper */
|
||||
#undef NO_LIBCWRAPPER
|
||||
|
||||
/* Have a monotonic clock from clock_gettime() */
|
||||
#undef MONOTONIC_CLOCK
|
||||
|
||||
#endif /* _DIX_CONFIG_H_ */
|
||||
|
|
34
os/WaitFor.c
34
os/WaitFor.c
|
@ -119,11 +119,13 @@ mffs(fd_mask mask)
|
|||
struct _OsTimerRec {
|
||||
OsTimerPtr next;
|
||||
CARD32 expires;
|
||||
CARD32 delta;
|
||||
OsTimerCallback callback;
|
||||
pointer arg;
|
||||
};
|
||||
|
||||
static void DoTimer(OsTimerPtr timer, CARD32 now, OsTimerPtr *prev);
|
||||
static void CheckAllTimers(CARD32 now);
|
||||
static OsTimerPtr timers = NULL;
|
||||
|
||||
/*****************
|
||||
|
@ -200,6 +202,11 @@ WaitForSomething(int *pClientsReady)
|
|||
{
|
||||
now = GetTimeInMillis();
|
||||
timeout = timers->expires - now;
|
||||
/* time has rewound. reset the timers. */
|
||||
if (timeout > timers->delta) {
|
||||
CheckAllTimers(now);
|
||||
timeout = timers->expires - now;
|
||||
}
|
||||
if (timeout < 0)
|
||||
timeout = 0;
|
||||
waittime.tv_sec = timeout / MILLI_PER_SECOND;
|
||||
|
@ -426,6 +433,20 @@ ANYSET(FdMask *src)
|
|||
}
|
||||
#endif
|
||||
|
||||
/* If time has rewound, re-run every affected timer.
|
||||
* TimerForce will change timer->next, but it will _generally_ only
|
||||
* promote timers in the list, meaning that we should still be
|
||||
* walking every timer. */
|
||||
static void
|
||||
CheckAllTimers(CARD32 now)
|
||||
{
|
||||
OsTimerPtr timer;
|
||||
|
||||
for (timer = timers; timer; timer = timer->next) {
|
||||
if (timer->expires - now > timer->delta)
|
||||
TimerForce(timer);
|
||||
}
|
||||
}
|
||||
|
||||
static void
|
||||
DoTimer(OsTimerPtr timer, CARD32 now, OsTimerPtr *prev)
|
||||
|
@ -467,8 +488,13 @@ TimerSet(OsTimerPtr timer, int flags, CARD32 millis,
|
|||
}
|
||||
if (!millis)
|
||||
return timer;
|
||||
if (!(flags & TimerAbsolute))
|
||||
if (flags & TimerAbsolute) {
|
||||
timer->delta = millis - now;
|
||||
}
|
||||
else {
|
||||
timer->delta = millis;
|
||||
millis += now;
|
||||
}
|
||||
timer->expires = millis;
|
||||
timer->callback = func;
|
||||
timer->arg = arg;
|
||||
|
@ -481,8 +507,10 @@ TimerSet(OsTimerPtr timer, int flags, CARD32 millis,
|
|||
}
|
||||
for (prev = &timers;
|
||||
*prev && (int) ((*prev)->expires - millis) <= 0;
|
||||
prev = &(*prev)->next)
|
||||
;
|
||||
prev = &(*prev)->next) {
|
||||
if ((*prev)->expires - now > (*prev)->delta)
|
||||
CheckAllTimers(now);
|
||||
}
|
||||
timer->next = *prev;
|
||||
*prev = timer;
|
||||
return timer;
|
||||
|
|
26
os/utils.c
26
os/utils.c
|
@ -53,6 +53,19 @@ OR PERFORMANCE OF THIS SOFTWARE.
|
|||
#include <dix-config.h>
|
||||
#endif
|
||||
|
||||
/* The world's most shocking hack, to ensure we get clock_gettime() and
|
||||
* CLOCK_MONOTONIC. */
|
||||
#ifdef _POSIX_C_SOURCE
|
||||
#define _SAVED_POSIX_C_SOURCE _POSIX_C_SOURCE
|
||||
#undef _POSIX_C_SOURCE
|
||||
#endif
|
||||
#define _POSIX_C_SOURCE 199309L
|
||||
#include <time.h>
|
||||
#undef _POSIX_C_SOURCE
|
||||
#ifdef _SAVED_POSIX_C_SOURCE
|
||||
#define _POSIX_C_SOURCE _SAVED_POSIX_C_SOURCE
|
||||
#endif
|
||||
|
||||
#ifdef __CYGWIN__
|
||||
#include <stdlib.h>
|
||||
#include <signal.h>
|
||||
|
@ -92,7 +105,6 @@ OR PERFORMANCE OF THIS SOFTWARE.
|
|||
#if !defined(SYSV) && !defined(WIN32) && !defined(Lynx) && !defined(QNX4)
|
||||
#include <sys/resource.h>
|
||||
#endif
|
||||
#include <time.h>
|
||||
#include <sys/stat.h>
|
||||
#include <ctype.h> /* for isspace */
|
||||
#include <stdarg.h>
|
||||
|
@ -535,10 +547,16 @@ GiveUp(int sig)
|
|||
_X_EXPORT CARD32
|
||||
GetTimeInMillis(void)
|
||||
{
|
||||
struct timeval tp;
|
||||
struct timeval tv;
|
||||
|
||||
X_GETTIMEOFDAY(&tp);
|
||||
return(tp.tv_sec * 1000) + (tp.tv_usec / 1000);
|
||||
#ifdef MONOTONIC_CLOCK
|
||||
struct timespec tp;
|
||||
if (clock_gettime(CLOCK_MONOTONIC, &tp) == 0)
|
||||
return (tp.tv_sec * 1000) + (tp.tv_nsec / 1000000);
|
||||
#endif
|
||||
|
||||
X_GETTIMEOFDAY(&tv);
|
||||
return(tv.tv_sec * 1000) + (tv.tv_usec / 1000);
|
||||
}
|
||||
|
||||
_X_EXPORT void
|
||||
|
|
|
@ -1187,6 +1187,7 @@ SProcRRSelectInput (ClientPtr client)
|
|||
|
||||
swaps(&stuff->length, n);
|
||||
swapl(&stuff->window, n);
|
||||
swaps(&stuff->enable, n);
|
||||
return ProcRRSelectInput(client);
|
||||
}
|
||||
|
||||
|
|
Loading…
Reference in New Issue