glx: Convert non-generated function pointer thunking

Same concept as the generated code conversion.

Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Jon TURNEY <jon.turney@dronecode.org.uk>
This commit is contained in:
Adam Jackson 2013-12-03 13:11:09 -05:00 committed by Keith Packard
parent c4567a3760
commit 6b93e1f5ff
3 changed files with 44 additions and 14 deletions

View File

@ -104,29 +104,43 @@ DoGetProgramString(struct __GLXclientStateRec *cl, GLbyte * pc,
int int
__glXDisp_GetProgramStringARB(struct __GLXclientStateRec *cl, GLbyte * pc) __glXDisp_GetProgramStringARB(struct __GLXclientStateRec *cl, GLbyte * pc)
{ {
return DoGetProgramString(cl, pc, glGetProgramivARB, PFNGLGETPROGRAMIVARBPROC get_program =
glGetProgramStringARB, False); __glGetProcAddress("glGetProgramivARB");
PFNGLGETPROGRAMSTRINGARBPROC get_program_string =
__glGetProcAddress("glGetProgramStringARB");
return DoGetProgramString(cl, pc, get_program, get_program_string, False);
} }
int int
__glXDispSwap_GetProgramStringARB(struct __GLXclientStateRec *cl, GLbyte * pc) __glXDispSwap_GetProgramStringARB(struct __GLXclientStateRec *cl, GLbyte * pc)
{ {
return DoGetProgramString(cl, pc, glGetProgramivARB, PFNGLGETPROGRAMIVARBPROC get_program =
glGetProgramStringARB, True); __glGetProcAddress("glGetProgramivARB");
PFNGLGETPROGRAMSTRINGARBPROC get_program_string =
__glGetProcAddress("glGetProgramStringARB");
return DoGetProgramString(cl, pc, get_program, get_program_string, True);
} }
int int
__glXDisp_GetProgramStringNV(struct __GLXclientStateRec *cl, GLbyte * pc) __glXDisp_GetProgramStringNV(struct __GLXclientStateRec *cl, GLbyte * pc)
{ {
return DoGetProgramString(cl, pc, (PFNGLGETPROGRAMIVARBPROC)glGetProgramivNV, PFNGLGETPROGRAMIVARBPROC get_program =
(PFNGLGETPROGRAMSTRINGARBPROC)glGetProgramStringNV, __glGetProcAddress("glGetProgramivARB");
False); PFNGLGETPROGRAMSTRINGARBPROC get_program_string =
__glGetProcAddress("glGetProgramStringARB");
return DoGetProgramString(cl, pc, get_program, get_program_string, False);
} }
int int
__glXDispSwap_GetProgramStringNV(struct __GLXclientStateRec *cl, GLbyte * pc) __glXDispSwap_GetProgramStringNV(struct __GLXclientStateRec *cl, GLbyte * pc)
{ {
return DoGetProgramString(cl, pc, (PFNGLGETPROGRAMIVARBPROC)glGetProgramivNV, PFNGLGETPROGRAMIVARBPROC get_program =
(PFNGLGETPROGRAMSTRINGARBPROC)glGetProgramStringNV, __glGetProcAddress("glGetProgramivARB");
True); PFNGLGETPROGRAMSTRINGARBPROC get_program_string =
__glGetProcAddress("glGetProgramStringARB");
return DoGetProgramString(cl, pc, get_program, get_program_string, True);
} }

View File

@ -231,13 +231,21 @@ __glXDisp_DrawArrays(GLbyte * pc)
glEdgeFlagPointer(stride, (const GLboolean *) pc); glEdgeFlagPointer(stride, (const GLboolean *) pc);
break; break;
case GL_SECONDARY_COLOR_ARRAY: case GL_SECONDARY_COLOR_ARRAY:
{
PFNGLSECONDARYCOLORPOINTERPROC SecondaryColorPointerEXT =
__glGetProcAddress("glSecondaryColorPointerEXT");
glEnableClientState(GL_SECONDARY_COLOR_ARRAY); glEnableClientState(GL_SECONDARY_COLOR_ARRAY);
glSecondaryColorPointerEXT(numVals, datatype, stride, pc); SecondaryColorPointerEXT(numVals, datatype, stride, pc);
break; break;
}
case GL_FOG_COORD_ARRAY: case GL_FOG_COORD_ARRAY:
{
PFNGLFOGCOORDPOINTERPROC FogCoordPointerEXT =
__glGetProcAddress("glFogCoordPointerEXT");
glEnableClientState(GL_FOG_COORD_ARRAY); glEnableClientState(GL_FOG_COORD_ARRAY);
glFogCoordPointerEXT(datatype, stride, pc); FogCoordPointerEXT(datatype, stride, pc);
break; break;
}
default: default:
break; break;
} }

View File

@ -353,13 +353,21 @@ __glXDispSwap_DrawArrays(GLbyte * pc)
glEdgeFlagPointer(stride, (const GLboolean *) pc); glEdgeFlagPointer(stride, (const GLboolean *) pc);
break; break;
case GL_SECONDARY_COLOR_ARRAY: case GL_SECONDARY_COLOR_ARRAY:
{
PFNGLSECONDARYCOLORPOINTERPROC SecondaryColorPointerEXT =
__glGetProcAddress("glSecondaryColorPointerEXT");
glEnableClientState(GL_SECONDARY_COLOR_ARRAY); glEnableClientState(GL_SECONDARY_COLOR_ARRAY);
glSecondaryColorPointerEXT(numVals, datatype, stride, pc); SecondaryColorPointerEXT(numVals, datatype, stride, pc);
break; break;
}
case GL_FOG_COORD_ARRAY: case GL_FOG_COORD_ARRAY:
{
PFNGLFOGCOORDPOINTERPROC FogCoordPointerEXT =
__glGetProcAddress("glFogCoordPointerEXT");
glEnableClientState(GL_FOG_COORD_ARRAY); glEnableClientState(GL_FOG_COORD_ARRAY);
glFogCoordPointerEXT(datatype, stride, pc); FogCoordPointerEXT(datatype, stride, pc);
break; break;
}
default: default:
break; break;
} }