glx: Undo memory allocation checking damage.
authorMatt Turner <mattst88@gmail.com>
Thu, 23 Jun 2016 06:11:27 +0000 (23:11 -0700)
committerMatt Turner <mattst88@gmail.com>
Fri, 8 Jul 2016 21:03:19 +0000 (14:03 -0700)
commit2c866686942960046b406502b8abc3cef8b011fa
treec386875d2b4a5571d8390766b8992b30d18114ee
parentb36644bae611d608cee8ef0d5dd1200313234b73
glx: Undo memory allocation checking damage.

This partially reverts commit d41f5396f3cb619729021390c273f838d92f11fb.

That untested commit broke the tex-skipped-unit piglit test and the
arbvparray Mesa demo when run with indirect GLX.

state->array_state is used during initialization, so its assignment cannot be
moved to the end of the function.

The backtrace looked like:

Program received signal SIGSEGV, Segmentation fault.
0x00007ffff77c7a5c in __glXGetActiveTextureUnit (state=0x6270e0) at indirect_vertex_array.c:1952
1952           return state->array_state->active_texture_unit;
(gdb) bt
0  0x00007ffff77c7a5c in __glXGetActiveTextureUnit (state=0x6270e0) at indirect_vertex_array.c:1952
1  0x00007ffff77cbf62 in get_client_data (gc=0x626f50, cap=34018, data=0x7fffffffd7a0) at single2.c:159
2  0x00007ffff77cce51 in __indirect_glGetIntegerv (val=34018, i=0x7fffffffd830) at single2.c:498
3  0x00007ffff77c4340 in __glXInitVertexArrayState (gc=0x626f50) at indirect_vertex_array.c:193

Reviewed-by: Ian Romanick <ian.d.romanick@intel.com>
src/glx/indirect_vertex_array.c