[Mesa-dev] [PATCH] mesa/main: Prevent sefgault on glGetIntegerv(GL_ATOMIC_COUNTER_BUFFER_BINDING).

Kenneth Graunke kenneth at whitecape.org
Sat Jun 7 03:12:12 PDT 2014


On Friday, June 06, 2014 11:59:39 PM jfonseca at vmware.com wrote:
> From: José Fonseca <jfonseca at vmware.com>
> 
> A recent ApiTrace change, that tries to dump more buffer state
> causes Mesa from my distro (10.1.4) to segfaults here.
> 
> I haven't actually confirm this fixes it (I can't repro on master),
> but it seems a good idea to be defensive here anyway.
> 
> Cc: "10.1 10.2" <mesa-stable at lists.freedesktop.org>
> ---
>  src/mesa/main/get.c | 6 +++++-
>  1 file changed, 5 insertions(+), 1 deletion(-)
> 
> diff --git a/src/mesa/main/get.c b/src/mesa/main/get.c
> index 267b5f2..9b56edb 100644
> --- a/src/mesa/main/get.c
> +++ b/src/mesa/main/get.c
> @@ -1005,7 +1005,11 @@ find_custom_value(struct gl_context *ctx, const 
struct value_desc *d, union valu
>        break;
>     /* GL_ARB_shader_atomic_counters */
>     case GL_ATOMIC_COUNTER_BUFFER_BINDING:
> -      v->value_int = ctx->AtomicBuffer->Name;
> +      if (ctx->AtomicBuffer) {
> +         v->value_int = ctx->AtomicBuffer->Name;
> +      } else {
> +         v->value_int = 0;
> +      }
>        break;
>     /* GL_ARB_draw_indirect */
>     case GL_DRAW_INDIRECT_BUFFER_BINDING:
> 

Thanks for fixing this, José!

Reviewed-by: Kenneth Graunke <kenneth at whitecape.org>
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 836 bytes
Desc: This is a digitally signed message part.
URL: <http://lists.freedesktop.org/archives/mesa-dev/attachments/20140607/36312741/attachment.sig>


More information about the mesa-dev mailing list