diff options
author | Brian Paul <[email protected]> | 2009-04-03 12:49:03 -0600 |
---|---|---|
committer | Brian Paul <[email protected]> | 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 58cae88b08b..da6956efed5 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); } /*@}*/ |