[Mesa-dev] [PATCH 2/2] glsl: ensure that enter/leave record get a record type

Ilia Mirkin imirkin at alum.mit.edu
Sat Feb 21 10:54:28 PST 2015


May make life easier for tools like Coverity.

Signed-off-by: Ilia Mirkin <imirkin at alum.mit.edu>
---
 src/glsl/link_uniform_blocks.cpp | 2 ++
 src/glsl/link_uniforms.cpp       | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/src/glsl/link_uniform_blocks.cpp b/src/glsl/link_uniform_blocks.cpp
index 1c175ec..4c28b56 100644
--- a/src/glsl/link_uniform_blocks.cpp
+++ b/src/glsl/link_uniform_blocks.cpp
@@ -69,12 +69,14 @@ private:
 
    virtual void enter_record(const glsl_type *type, const char *name,
                              bool row_major) {
+      assert(type->is_record());
       this->offset = glsl_align(
             this->offset, type->std140_base_alignment(row_major));
    }
 
    virtual void leave_record(const glsl_type *type, const char *name,
                              bool row_major) {
+      assert(type->is_record());
       /* If this is the last field of a structure, apply rule #9.  The
        * GL_ARB_uniform_buffer_object spec says:
        *
diff --git a/src/glsl/link_uniforms.cpp b/src/glsl/link_uniforms.cpp
index 347f079..799c74b 100644
--- a/src/glsl/link_uniforms.cpp
+++ b/src/glsl/link_uniforms.cpp
@@ -546,12 +546,14 @@ private:
 
    virtual void enter_record(const glsl_type *type, const char *name,
                              bool row_major) {
+      assert(type->is_record());
       this->ubo_byte_offset = glsl_align(
             this->ubo_byte_offset, type->std140_base_alignment(row_major));
    }
 
    virtual void leave_record(const glsl_type *type, const char *name,
                              bool row_major) {
+      assert(type->is_record());
       this->ubo_byte_offset = glsl_align(
             this->ubo_byte_offset, type->std140_base_alignment(row_major));
    }
-- 
2.0.5



More information about the mesa-dev mailing list