[Mesa-dev] [PATCH 1/2] mesa: common/meta: avoid printing uninitialized bytes.

Ian Romanick idr at freedesktop.org
Tue May 29 07:01:58 PDT 2012


On 05/26/2012 12:22 AM, Oliver McFadden wrote:
> Mesa 8.1-devel implementation error: meta program compile failed:
> ��
>
> Signed-off-by: Oliver McFadden<oliver.mcfadden at linux.intel.com>
> ---
>   src/mesa/drivers/common/meta.c |    4 ++--
>   1 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/src/mesa/drivers/common/meta.c b/src/mesa/drivers/common/meta.c
> index 95336fc..316d7b2 100644
> --- a/src/mesa/drivers/common/meta.c
> +++ b/src/mesa/drivers/common/meta.c
> @@ -338,7 +338,7 @@ compile_shader_with_debug(struct gl_context *ctx, GLenum target, const GLcharARB
>      if (size == 0)
>         return 0;
>
> -   info = malloc(size);
> +   info = calloc(1, size);
>      if (!info)
>         return 0;
>
> @@ -369,7 +369,7 @@ link_program_with_debug(struct gl_context *ctx, GLuint program)
>      if (size == 0)
>         return 0;
>
> -   info = malloc(size);
> +   info = calloc(1, size);
>      if (!info)
>         return 0;
>

(FYI... Monday was a holiday in the US, so most people were having 
picnics instead of reviewing patches.)

So... _mesa_GetProgramiv(GL_INFO_LOG_LENGTH) (or _mesa_GetShaderiv) 
return non-zero, but _mesa_GetProgramInfoLog (or _mesa_GetShaderInfoLog) 
don't write anything to the string?  What causes that?  It seems like 
this change just papers over a different bug.



More information about the mesa-dev mailing list