summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorIan Romanick <[email protected]>2012-12-14 14:59:11 -0800
committerIan Romanick <[email protected]>2013-01-18 17:35:33 -0800
commit5938c7774ff973612358ca52691c3eb73171e2e7 (patch)
tree36d7b1f119b062ff7e4a45be30134da1c50b3833
parentf26520146b6763212aca5c4f1f14a32f2824bbb0 (diff)
mesa: Refactor getting a uniform's name to a helper function
We currently have a bug in this code, and I don't want to fix it in two places. Signed-off-by: Ian Romanick <[email protected]> Reviewed-by: Kenneth Graunke <[email protected]>
-rw-r--r--src/mesa/main/uniform_query.cpp2
-rw-r--r--src/mesa/main/uniforms.c12
-rw-r--r--src/mesa/main/uniforms.h5
3 files changed, 16 insertions, 3 deletions
diff --git a/src/mesa/main/uniform_query.cpp b/src/mesa/main/uniform_query.cpp
index efff8f381f1..ec08ed48b40 100644
--- a/src/mesa/main/uniform_query.cpp
+++ b/src/mesa/main/uniform_query.cpp
@@ -59,7 +59,7 @@ _mesa_GetActiveUniform(GLhandleARB program, GLuint index,
const struct gl_uniform_storage *const uni = &shProg->UniformStorage[index];
if (nameOut) {
- _mesa_copy_string(nameOut, maxLength, length, uni->name);
+ _mesa_get_uniform_name(uni, maxLength, length, nameOut);
}
if (size) {
diff --git a/src/mesa/main/uniforms.c b/src/mesa/main/uniforms.c
index 77b195edbc3..edb44777f6b 100644
--- a/src/mesa/main/uniforms.c
+++ b/src/mesa/main/uniforms.c
@@ -795,7 +795,15 @@ _mesa_GetActiveUniformName(GLuint program, GLuint uniformIndex,
}
if (uniformName) {
- _mesa_copy_string(uniformName, bufSize, length,
- shProg->UniformStorage[uniformIndex].name);
+ _mesa_get_uniform_name(& shProg->UniformStorage[uniformIndex],
+ bufSize, length, uniformName);
}
}
+
+void
+_mesa_get_uniform_name(const struct gl_uniform_storage *uni,
+ GLsizei maxLength, GLsizei *length,
+ GLchar *nameOut)
+{
+ _mesa_copy_string(nameOut, maxLength, length, uni->name);
+}
diff --git a/src/mesa/main/uniforms.h b/src/mesa/main/uniforms.h
index 287d7106bb6..f17503121c8 100644
--- a/src/mesa/main/uniforms.h
+++ b/src/mesa/main/uniforms.h
@@ -213,6 +213,11 @@ _mesa_sampler_uniforms_are_valid(const struct gl_shader_program *shProg,
extern const struct gl_program_parameter *
get_uniform_parameter(struct gl_shader_program *shProg, GLint index);
+extern void
+_mesa_get_uniform_name(const struct gl_uniform_storage *uni,
+ GLsizei maxLength, GLsizei *length,
+ GLchar *nameOut);
+
struct gl_builtin_uniform_element {
const char *field;
int tokens[STATE_LENGTH];