Mesa (10.4): linker: Wrap access of producer_var with a NULL check

Emil Velikov evelikov at kemper.freedesktop.org
Sun Dec 21 19:53:54 UTC 2014


Module: Mesa
Branch: 10.4
Commit: a4c83485972a3dfae34830cd4babe1f32574a8a4
URL:    http://cgit.freedesktop.org/mesa/mesa/commit/?id=a4c83485972a3dfae34830cd4babe1f32574a8a4

Author: Ian Romanick <ian.d.romanick at intel.com>
Date:   Mon Dec  1 14:16:24 2014 -0800

linker: Wrap access of producer_var with a NULL check

producer_var could be NULL if consumer_var is not NULL and
consumer_is_fs is false.  This will occur when the producer is NULL and
the consumer is the geometry shader for a program that contains only a
geometry shader.  This will occur starting with the next patch.

Signed-off-by: Ian Romanick <ian.d.romanick at intel.com>
Cc: pavol at klacansky.com
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=82585
Reviewed-by: Jordan Justen <jordan.l.justen at intel.com>
(cherry picked from commit 5eca78a00a5de442aaf541a1095d5cfa6b4f45de)
Nominated-by: Ian Romanick <ian.d.romanick at intel.com>

---

 src/glsl/link_varyings.cpp |    8 +++++---
 1 file changed, 5 insertions(+), 3 deletions(-)

diff --git a/src/glsl/link_varyings.cpp b/src/glsl/link_varyings.cpp
index 1866ab2..43da2c6 100644
--- a/src/glsl/link_varyings.cpp
+++ b/src/glsl/link_varyings.cpp
@@ -835,9 +835,11 @@ varying_matches::record(ir_variable *producer_var, ir_variable *consumer_var)
        * regardless of where they appear.  We can trivially satisfy that
        * requirement by changing the interpolation type to flat here.
        */
-      producer_var->data.centroid = false;
-      producer_var->data.sample = false;
-      producer_var->data.interpolation = INTERP_QUALIFIER_FLAT;
+      if (producer_var) {
+         producer_var->data.centroid = false;
+         producer_var->data.sample = false;
+         producer_var->data.interpolation = INTERP_QUALIFIER_FLAT;
+      }
 
       if (consumer_var) {
          consumer_var->data.centroid = false;




More information about the mesa-commit mailing list