summaryrefslogtreecommitdiffstats
path: root/opengl
diff options
context:
space:
mode:
authorBen Clayton <bclayton@google.com>2014-07-17 11:10:45 +0100
committerBen Clayton <bclayton@google.com>2014-07-21 09:52:48 +0000
commit7b3f48d2efc83094de70c24520bafacda3749a20 (patch)
treeea8555a14b298393aabad05bd41d043274e517fb /opengl
parentc6414d13a3611f9e29eac11a037c7c51b94d0c58 (diff)
downloadframeworks_native-7b3f48d2efc83094de70c24520bafacda3749a20.zip
frameworks_native-7b3f48d2efc83094de70c24520bafacda3749a20.tar.gz
frameworks_native-7b3f48d2efc83094de70c24520bafacda3749a20.tar.bz2
Use the count parameter to store all the uniform vectors, not just the first one. DO NOT MERGE.
Change-Id: Ib56d859051f0b895de5c12ffa371cd4b2b65ac0b (cherry picked from commit 31b0aec64ba44b1ee0581e00a588d84f4b081512)
Diffstat (limited to 'opengl')
-rw-r--r--opengl/libs/GLES_trace/src/gltrace_fixup.cpp12
1 files changed, 8 insertions, 4 deletions
diff --git a/opengl/libs/GLES_trace/src/gltrace_fixup.cpp b/opengl/libs/GLES_trace/src/gltrace_fixup.cpp
index 2e7aa20..e6d0062 100644
--- a/opengl/libs/GLES_trace/src/gltrace_fixup.cpp
+++ b/opengl/libs/GLES_trace/src/gltrace_fixup.cpp
@@ -297,14 +297,18 @@ void fixup_glShaderSource(GLMessage *glmsg, void *pointersToFixup[]) {
arg_strpp->add_charvalue(src);
}
-void fixup_glUniformGenericInteger(int argIndex, int nIntegers, GLMessage *glmsg,
+void fixup_glUniformGenericInteger(int argIndex, int nElemsPerVector, GLMessage *glmsg,
void *pointersToFixup[]) {
/* void glUniform?iv(GLint location, GLsizei count, const GLint *value); */
- fixup_GenericIntArray(argIndex, nIntegers, glmsg, pointersToFixup[0]);
+ GLMessage_DataType arg_count = glmsg->args(1);
+ int n_vectors = arg_count.intvalue(0);
+ fixup_GenericIntArray(argIndex, nElemsPerVector * n_vectors, glmsg, pointersToFixup[0]);
}
-void fixup_glUniformGeneric(int argIndex, int nFloats, GLMessage *glmsg, void *src) {
- fixup_GenericFloatArray(argIndex, nFloats, glmsg, src);
+void fixup_glUniformGeneric(int argIndex, int nElemsPerVector, GLMessage *glmsg, void *src) {
+ GLMessage_DataType arg_count = glmsg->args(1);
+ int n_vectors = arg_count.intvalue(0);
+ fixup_GenericFloatArray(argIndex, nElemsPerVector * n_vectors, glmsg, src);
}
void fixup_glUniformMatrixGeneric(int matrixSize, GLMessage *glmsg, void *pointersToFixup[]) {