glsl: Add assert to check variable_entry referenced_count after construction.
authorVinson Lee <vlee@vmware.com>
Tue, 24 Aug 2010 08:16:46 +0000 (01:16 -0700)
committerVinson Lee <vlee@vmware.com>
Tue, 24 Aug 2010 08:16:46 +0000 (01:16 -0700)
A variable_entry after construction should have its referenced_count
member set to 0. However, occassionally this isn't the case and
entry->referenced_count has been observed to be a garbage value. This
leads to crashes of several tests in the Piglit test suite.

This patch adds an assert to check that a variable_entry instance has
its referenced_count member initialized to 0 after construction.

src/glsl/ir_variable_refcount.cpp

index 20c2f6602bf229c749a069c932ebfbdd10fd58a9..66147279bef32f63405610ecd21aa62ade48a13e 100644 (file)
@@ -45,6 +45,7 @@ ir_variable_refcount_visitor::get_variable_entry(ir_variable *var)
    }
 
    variable_entry *entry = new(mem_ctx) variable_entry(var);
+   assert(entry->referenced_count == 0);
    this->variable_list.push_tail(entry);
    return entry;
 }