Mesa (master): mesa: fix an error in uniform arrays in row calculating.

Brian Paul brianp at kemper.freedesktop.org
Fri Jan 7 14:23:16 UTC 2011


Module: Mesa
Branch: master
Commit: 2a7380e9c3a040356599a5b7740aa24e067fc1f5
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=2a7380e9c3a040356599a5b7740aa24e067fc1f5

Author: Jian Zhao <jian.j.zhao at intel.com>
Date:   Wed Jan  5 10:41:20 2011 +0800

mesa: fix an error in uniform arrays in row calculating.

Fix the error in uniform row calculating, it may alloc one line
more which may cause out of range on memory usage, sometimes program
aborted when free the memory.

NOTE: This is a candidate for 7.9 and 7.10 branches.

Signed-off-by: Brian Paul <brianp at vmware.com>

---

 src/mesa/main/uniforms.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/main/uniforms.c b/src/mesa/main/uniforms.c
index 58e6baf..aee2e6b 100644
--- a/src/mesa/main/uniforms.c
+++ b/src/mesa/main/uniforms.c
@@ -513,7 +513,7 @@ get_uniform_rows_cols(const struct gl_program_parameter *p,
          *cols = p->Size;
       }
       else {
-         *rows = p->Size / 4 + 1;
+         *rows = (p->Size + 3) / 4;
          if (p->Size % 4 == 0)
             *cols = 4;
          else




More information about the mesa-commit mailing list