mirror of
https://gitlab.freedesktop.org/mesa/mesa.git
synced 2026-05-05 00:58:05 +02:00
mesa: fix texenv generation when num color bufs == 0
Before, if there were no color buffers enabled (with glDrawBuffers(GL_NONE)) when the texenv program was generated, we'd emit writes to OUTPUT[1] but the OutputsWritten mask was 0. This inconsistency caused an assertion to fail later in the Mesa->TGSI translation. Fixes fd.o bug 28169 NOTE: this is a candidate for the 7.8 branch (and depends on commitb6b9b17d27). (cherry picked from commit6e83420ee0)
This commit is contained in:
parent
596e1d3e44
commit
3daa728fe7
1 changed files with 4 additions and 1 deletions
|
|
@ -1203,11 +1203,14 @@ emit_texenv(struct texenv_fragment_program *p, GLuint unit)
|
|||
else
|
||||
alpha_saturate = GL_FALSE;
|
||||
|
||||
/* If this is the very last calculation, emit direct to output reg:
|
||||
/* If this is the very last calculation (and various other conditions
|
||||
* are met), emit directly to the color output register. Otherwise,
|
||||
* emit to a temporary register.
|
||||
*/
|
||||
if (key->separate_specular ||
|
||||
unit != p->last_tex_stage ||
|
||||
alpha_shift ||
|
||||
key->num_draw_buffers != 1 ||
|
||||
rgb_shift)
|
||||
dest = get_temp( p );
|
||||
else
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue