[Mesa-dev] [PATCH] glx/dri: Initialize api even if num_attribs == 0.

Ian Romanick idr at freedesktop.org
Wed Jan 11 11:55:42 PST 2012


On 01/10/2012 11:36 PM, Kenneth Graunke wrote:
> Both dri2_create_context_attribs and drisw_create_context_attribs call
> dri2_convert_glx_attribs, expecting it to fill in *api on success.
>
> However, when num_attribs == 0, it was returning true without setting
> *api, causing the caller to use an uninitialized value.
>
> Cc: Vadim Girlin<vadimgirlin at gmail.com>
> Signed-off-by: Kenneth Graunke<kenneth at whitecape.org>

Reviewed-by: Ian Romanick <ian.d.romanick at intel.com>

> ---
>   src/glx/dri_common.c |    4 +++-
>   1 files changed, 3 insertions(+), 1 deletions(-)
>
> Vadim, hopefully this should also fix Unigine Heaven for you.
>
> diff --git a/src/glx/dri_common.c b/src/glx/dri_common.c
> index 8feb587..ed0b134 100644
> --- a/src/glx/dri_common.c
> +++ b/src/glx/dri_common.c
> @@ -429,8 +429,10 @@ dri2_convert_glx_attribs(unsigned num_attribs, const uint32_t *attribs,
>      uint32_t profile;
>      int render_type = GLX_RGBA_TYPE;
>
> -   if (num_attribs == 0)
> +   if (num_attribs == 0) {
> +      *api = __DRI_API_OPENGL;
>         return true;
> +   }
>
>      /* This is actually an internal error, but what the heck.
>       */



More information about the mesa-dev mailing list