> On Jan 21, 2016, at 07:51, Nicolai Hähnle <nhaeh...@gmail.com> wrote: > > Wow... did you actually run into that crash?
No. I was just paying attention to compiler warnings ;) > > On 20.01.2016 20:14, Jeremy Huddleston Sequoia wrote: >> Signed-off-by: Jeremy Huddleston Sequoia <jerem...@apple.com> >> --- >> src/mesa/main/shaderapi.c | 12 +++++++++++- >> 1 file changed, 11 insertions(+), 1 deletion(-) >> >> diff --git a/src/mesa/main/shaderapi.c b/src/mesa/main/shaderapi.c >> index a988f41..75fc17c 100644 >> --- a/src/mesa/main/shaderapi.c >> +++ b/src/mesa/main/shaderapi.c >> @@ -1374,10 +1374,20 @@ _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 = calloc(maxCount, sizeof(GLuint)); >> + assert(obj); >> + > > Is there a precedent for using assert in this way? It feels wrong to me, > better set GL_OUT_OF_MEMORY. Yes, I was just following behavior from elsewhere in the same source file. In read_shader(), we have: buffer = malloc(shader_size); assert(buffer); I'm happy to change that to the following if you think it more appropriate: GLuint *obj; GET_CURRENT_CONTEXT(ctx); obj = calloc(maxCount, sizeof(GLuint)); if (!obj) { _mesa_error(ctx, GL_OUT_OF_MEMORY, "glShaderSourceARB"); return; } ... > >> GET_CURRENT_CONTEXT(ctx); >> get_attached_shaders(ctx, container, maxCount, count, obj); >> + >> + for (i=0 ; i < *count; i++) { >> + objARB[i] = (GLhandleARB)obj[i]; > > Since this can only ever be a widening of the type, you don't really need the > cast here. True. > > Nicolai > >> + } >> + >> + free(obj); >> } >> >> >>
smime.p7s
Description: S/MIME cryptographic signature
_______________________________________________ mesa-dev mailing list mesa-dev@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/mesa-dev