Commit bd1ce874728c06d08a1f9881f51edbdd2f1c9db0 "st/dri: Switch from
st_public.h to st_api.h" broke etracer on Gallium nvfx.

The root cause appears to be that etracer calls glClear with the
stencil bit set, but does not ask for a stencil buffer.
Enabling "stencil_buffer" in the etracer config works around the issue.

This results in strb being null, and the check for strb->surface in
st_clear segfaulting.

I'm not sure why that commit would cause this: I guess it
unintentionally indirectly changes the way st/dri handles stencil
buffers.

Changing if(strb->surface) to if(strb && strb->surface) everywhere
inside st_clear fixes the issue, but I'm not at all sure it is the
right fix.

Should st_clear check strb for null or is it supposed to be always
non-null? (and the bug is thus somewhere else?)
Did that commit just expose a bug, or is it buggy itself?

------------------------------------------------------------------------------
Download Intel® Parallel Studio Eval
Try the new software tools for yourself. Speed compiling, find bugs
proactively, and fine-tune applications for parallel performance.
See why Intel Parallel Studio got high marks during beta.
http://p.sf.net/sfu/intel-sw-dev
_______________________________________________
Mesa3d-dev mailing list
Mesa3d-dev@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/mesa3d-dev

Reply via email to