From: Jeremy Huddleston Sequoia Date: Thu, 21 Jan 2016 01:10:54 +0000 (-0800) Subject: mesa: Deal with size differences between GLuint and GLhandleARB in GetAttachedObjectsARB X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=739ac3d39dacdede853d150b9903001524453330;p=mesa.git mesa: Deal with size differences between GLuint and GLhandleARB in GetAttachedObjectsARB Signed-off-by: Jeremy Huddleston Sequoia Reviewed-by: Nicolai Hähnle --- diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c index a988f41697b..5854369a28c 100644 --- a/src/mesa/main/shaderapi.c +++ b/src/mesa/main/shaderapi.c @@ -1374,10 +1374,26 @@ _mesa_DetachShader(GLuint program, GLuint shader) void GLAPIENTRY _mesa_GetAttachedObjectsARB(GLhandleARB container, GLsizei maxCount, - GLsizei * count, GLhandleARB * obj) + GLsizei * count, GLhandleARB * objARB) { + int i; + GLuint *obj; + GET_CURRENT_CONTEXT(ctx); + + obj = calloc(maxCount, sizeof(GLuint)); + if (!obj) { + _mesa_error(ctx, GL_OUT_OF_MEMORY, "glGetAttachedObjectsARB"); + return; + } + get_attached_shaders(ctx, container, maxCount, count, obj); + + for (i = 0 ; i < *count; i++) { + objARB[i] = (GLhandleARB)obj[i]; + } + + free(obj); }