aboutsummaryrefslogtreecommitdiff
path: root/mesalib/src/glsl/ir.cpp
diff options
context:
space:
mode:
authormarha <marha@users.sourceforge.net>2013-10-24 08:15:59 +0200
committermarha <marha@users.sourceforge.net>2013-10-24 08:15:59 +0200
commit285b1bd8933288fc56259cfb3de61207c8e35d9e (patch)
tree2107aaa7f683f16a9a1a73e5f6f2d7ba53710f32 /mesalib/src/glsl/ir.cpp
parentc665b6e88274f8bc603b0f14f92bf09d2023bd4d (diff)
parent4eb0b643ad978d94837e2d587a5d4358f974a25c (diff)
downloadvcxsrv-285b1bd8933288fc56259cfb3de61207c8e35d9e.tar.gz
vcxsrv-285b1bd8933288fc56259cfb3de61207c8e35d9e.tar.bz2
vcxsrv-285b1bd8933288fc56259cfb3de61207c8e35d9e.zip
Merge remote-tracking branch 'origin/released'
* origin/released: fontconfig mesa xserver git update 24 oct 2013 Conflicts: xorg-server/glx/glxdricommon.c
Diffstat (limited to 'mesalib/src/glsl/ir.cpp')
-rw-r--r--mesalib/src/glsl/ir.cpp11
1 files changed, 9 insertions, 2 deletions
diff --git a/mesalib/src/glsl/ir.cpp b/mesalib/src/glsl/ir.cpp
index de9613e8f..54a8e400c 100644
--- a/mesalib/src/glsl/ir.cpp
+++ b/mesalib/src/glsl/ir.cpp
@@ -1603,8 +1603,15 @@ ir_variable::ir_variable(const struct glsl_type *type, const char *name,
this->depth_layout = ir_depth_layout_none;
this->used = false;
- if (type && type->base_type == GLSL_TYPE_SAMPLER)
- this->read_only = true;
+ if (type != NULL) {
+ if (type->base_type == GLSL_TYPE_SAMPLER)
+ this->read_only = true;
+
+ if (type->is_interface())
+ this->init_interface_type(type);
+ else if (type->is_array() && type->fields.array->is_interface())
+ this->init_interface_type(type->fields.array);
+ }
}