diff options
author | Brian Paul <brianp@vmware.com> | 2009-04-03 12:49:03 -0600 |
---|---|---|
committer | Brian Paul <brianp@vmware.com> | 2009-04-03 12:49:03 -0600 |
commit | ce461ffc5aa2ea6941d6722e8ed473cda8c17833 (patch) | |
tree | 7811162b9dad12e17caf341678a44a54658d60fa /src | |
parent | b8a200ac9d11c09646de9b7d3f3f64a742c6abe3 (diff) |
mesa: only clear matrix MAT_DIRTY_INVERSE flag when we actually compute the inverse
If _math_matrix_analyse() got called before we allocated the inverse
matrix array we could lose the flag indicating that we needed to compute
the inverse. This could happen with certain vertex shader cases.
Diffstat (limited to 'src')
-rw-r--r-- | src/mesa/math/m_matrix.c | 5 |
1 files changed, 2 insertions, 3 deletions
diff --git a/src/mesa/math/m_matrix.c b/src/mesa/math/m_matrix.c index 58cae88b08..da6956efed 100644 --- a/src/mesa/math/m_matrix.c +++ b/src/mesa/math/m_matrix.c @@ -1379,11 +1379,10 @@ _math_matrix_analyse( GLmatrix *mat ) if (mat->inv && (mat->flags & MAT_DIRTY_INVERSE)) { matrix_invert( mat ); + mat->flags &= ~MAT_DIRTY_INVERSE; } - mat->flags &= ~(MAT_DIRTY_FLAGS| - MAT_DIRTY_TYPE| - MAT_DIRTY_INVERSE); + mat->flags &= ~(MAT_DIRTY_FLAGS | MAT_DIRTY_TYPE); } /*@}*/ |