aboutsummaryrefslogtreecommitdiff
path: root/mesalib
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2011-05-12 11:03:26 +0000
committermarha <marha@users.sourceforge.net>2011-05-12 11:03:26 +0000
commit3e9b8f0b0c2c4a0fdde2013a5445ebce9c344dd4 (patch)
treeb42afb31d05c2de227d17a076cdf58267e4d57b9 /mesalib
parentf871d84ccfff423c34259024eaccc61e475cea6b (diff)
parent6355693a021ce9473196b685cc9f8c2cbb0899a8 (diff)
downloadvcxsrv-3e9b8f0b0c2c4a0fdde2013a5445ebce9c344dd4.tar.gz
vcxsrv-3e9b8f0b0c2c4a0fdde2013a5445ebce9c344dd4.tar.bz2
vcxsrv-3e9b8f0b0c2c4a0fdde2013a5445ebce9c344dd4.zip
merge ^/branches/released .
Diffstat (limited to 'mesalib')
-rw-r--r--mesalib/src/mesa/main/dlist.c6
-rw-r--r--mesalib/src/mesa/program/programopt.c6
2 files changed, 9 insertions, 3 deletions
diff --git a/mesalib/src/mesa/main/dlist.c b/mesalib/src/mesa/main/dlist.c
index f150d6c7b..64ef98509 100644
--- a/mesalib/src/mesa/main/dlist.c
+++ b/mesalib/src/mesa/main/dlist.c
@@ -9784,9 +9784,9 @@ _mesa_create_save_table(void)
SET_DeleteProgramsNV(table, _mesa_DeletePrograms);
SET_GenProgramsNV(table, _mesa_GenPrograms);
SET_IsProgramNV(table, _mesa_IsProgramARB);
- SET_GetVertexAttribdvNV(table, _mesa_GetVertexAttribdvNV);
- SET_GetVertexAttribfvNV(table, _mesa_GetVertexAttribfvNV);
- SET_GetVertexAttribivNV(table, _mesa_GetVertexAttribivNV);
+ SET_GetVertexAttribdvARB(table, _mesa_GetVertexAttribdvARB);
+ SET_GetVertexAttribfvARB(table, _mesa_GetVertexAttribfvARB);
+ SET_GetVertexAttribivARB(table, _mesa_GetVertexAttribivARB);
SET_GetVertexAttribPointervNV(table, _mesa_GetVertexAttribPointervNV);
SET_ProgramEnvParameter4dARB(table, save_ProgramEnvParameter4dARB);
SET_ProgramEnvParameter4dvARB(table, save_ProgramEnvParameter4dvARB);
diff --git a/mesalib/src/mesa/program/programopt.c b/mesalib/src/mesa/program/programopt.c
index a01252dab..62b406653 100644
--- a/mesalib/src/mesa/program/programopt.c
+++ b/mesalib/src/mesa/program/programopt.c
@@ -267,6 +267,11 @@ _mesa_append_fog_code(struct gl_context *ctx,
return;
}
+ if (!(fprog->Base.OutputsWritten & (1 << FRAG_RESULT_COLOR))) {
+ /* program doesn't output color, so nothing to do */
+ return;
+ }
+
/* Alloc storage for new instructions */
newInst = _mesa_alloc_instructions(newLen);
if (!newInst) {
@@ -407,6 +412,7 @@ _mesa_append_fog_code(struct gl_context *ctx,
fprog->Base.Instructions = newInst;
fprog->Base.NumInstructions = inst - newInst;
fprog->Base.InputsRead |= FRAG_BIT_FOGC;
+ assert(fprog->Base.OutputsWritten & (1 << FRAG_RESULT_COLOR));
}