[Mesa-dev] [PATCH 2/3] glsl: don't crash if a field is specified for a non-struct uniform

Luca Barbieri luca at luca-barbieri.com
Wed Aug 18 03:52:56 PDT 2010


This was triggered by the previous bug, but is a separate problem
in the general sense.
---
 src/mesa/program/ir_to_mesa.cpp |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/src/mesa/program/ir_to_mesa.cpp b/src/mesa/program/ir_to_mesa.cpp
index 1f3072f..825c6f4 100644
--- a/src/mesa/program/ir_to_mesa.cpp
+++ b/src/mesa/program/ir_to_mesa.cpp
@@ -1145,7 +1145,7 @@ get_builtin_uniform_reg(struct gl_program *prog,
       if (!field && statevars[i].field) {
 	 assert(!"FINISHME: whole-structure state var dereference");
       }
-      if (field && strcmp(statevars[i].field, field) != 0)
+      if (field && (!statevars[i].field || strcmp(statevars[i].field, field) != 0))
 	 continue;
       break;
    }
-- 
1.7.0.4



More information about the mesa-dev mailing list