]> git.tdb.fi Git - libs/gl.git/blobdiff - source/program.cpp
Introduce a typedef for uniform layout hashes in Program
[libs/gl.git] / source / program.cpp
index e16776f8f53f078a2ae53c39b482326a9e8b16cc..a81d80ae378ca457adb70817474109b3d3fc10c3 100644 (file)
@@ -196,7 +196,7 @@ void Program::link()
                        {
                                glGetActiveUniformsiv(id, indices2.size(), &indices2[0], GL_UNIFORM_ARRAY_STRIDE, &values[0]);
                                for(unsigned j=0; j<indices2.size(); ++j)
-                                       uniforms_by_index[indices[j]]->array_stride = values[j];
+                                       uniforms_by_index[indices2[j]]->array_stride = values[j];
                        }
 
                        indices2.clear();
@@ -212,7 +212,7 @@ void Program::link()
                        {
                                glGetActiveUniformsiv(id, indices2.size(), &indices2[0], GL_UNIFORM_MATRIX_STRIDE, &values[0]);
                                for(unsigned j=0; j<indices2.size(); ++j)
-                                       uniforms_by_index[indices[j]]->matrix_stride = values[j];
+                                       uniforms_by_index[indices2[j]]->matrix_stride = values[j];
                        }
 
                        sort(info.uniforms.begin(), info.uniforms.end(), uniform_location_compare);
@@ -237,7 +237,7 @@ void Program::link()
        uniform_layout_hash = compute_layout_hash(blockless_uniforms);
 }
 
-unsigned Program::compute_layout_hash(const vector<const UniformInfo *> &uniforms)
+Program::LayoutHash Program::compute_layout_hash(const vector<const UniformInfo *> &uniforms)
 {
        string layout_descriptor;
        for(vector<const UniformInfo *>::const_iterator i = uniforms.begin(); i!=uniforms.end(); ++i)