diff options
author | marha <marha@users.sourceforge.net> | 2011-10-10 07:52:38 +0200 |
---|---|---|
committer | marha <marha@users.sourceforge.net> | 2011-10-10 07:52:38 +0200 |
commit | afbd3947071a33f59dda122f1ac396442a02c128 (patch) | |
tree | e3dde5d2973697c24f73488a421327d09a9337c0 /mesalib/src/mesa/tnl | |
parent | b520df571e0a319eae5231d09f36b98f28b8914a (diff) | |
download | vcxsrv-afbd3947071a33f59dda122f1ac396442a02c128.tar.gz vcxsrv-afbd3947071a33f59dda122f1ac396442a02c128.tar.bz2 vcxsrv-afbd3947071a33f59dda122f1ac396442a02c128.zip |
fontconfig libX11 mesa pixman xkeyboard-config git updte 10 oct 2011
Diffstat (limited to 'mesalib/src/mesa/tnl')
-rw-r--r-- | mesalib/src/mesa/tnl/t_vb_program.c | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/mesalib/src/mesa/tnl/t_vb_program.c b/mesalib/src/mesa/tnl/t_vb_program.c index cc5e85634..367dfd5bb 100644 --- a/mesalib/src/mesa/tnl/t_vb_program.c +++ b/mesalib/src/mesa/tnl/t_vb_program.c @@ -336,11 +336,17 @@ run_vp( struct gl_context *ctx, struct tnl_pipeline_stage *stage ) for (i = 0; i < VERT_RESULT_MAX; i++) { if (program->Base.OutputsWritten & BITFIELD64_BIT(i)) { outputs[numOutputs++] = i; + } + } - if (!store->results[i].data) { - _mesa_vector4f_alloc( &store->results[i], 0, VB->Size, 32 ); - store->results[i].size = 4; - } + /* Allocate result vectors. We delay this until now to avoid allocating + * memory that would never be used if we don't run the software tnl pipeline. + */ + if (!store->results[0].storage) { + for (i = 0; i < VERT_RESULT_MAX; i++) { + assert(!store->results[i].storage); + _mesa_vector4f_alloc( &store->results[i], 0, VB->Size, 32 ); + store->results[i].size = 4; } } |