summaryrefslogtreecommitdiffstats
path: root/rsProgramVertex.cpp
diff options
context:
space:
mode:
authorAlex Sakhartchouk <alexst@google.com>2010-09-27 10:29:47 -0700
committerAlex Sakhartchouk <alexst@google.com>2010-09-27 10:29:47 -0700
commit0bd3c8621aeaab8d616ebf7644f9da3cce4bbde8 (patch)
tree06b748fa1b29aeef0313e926cb5a896108f0be32 /rsProgramVertex.cpp
parentb26fb04770442244233b630960f419cb154abc77 (diff)
downloadandroid_frameworks_rs-0bd3c8621aeaab8d616ebf7644f9da3cce4bbde8.tar.gz
android_frameworks_rs-0bd3c8621aeaab8d616ebf7644f9da3cce4bbde8.tar.bz2
android_frameworks_rs-0bd3c8621aeaab8d616ebf7644f9da3cce4bbde8.zip
Error checking for MVP matrix computation.
Fixing more padding bugs. Change-Id: Ic5d4260027b7dc86a50fdab7221c7296c7d3ea0d
Diffstat (limited to 'rsProgramVertex.cpp')
-rw-r--r--rsProgramVertex.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/rsProgramVertex.cpp b/rsProgramVertex.cpp
index c3ef3562..918625c5 100644
--- a/rsProgramVertex.cpp
+++ b/rsProgramVertex.cpp
@@ -108,6 +108,11 @@ void ProgramVertex::setupGL2(Context *rsc, ProgramVertexState *state, ShaderCach
rsc->checkError("ProgramVertex::setupGL2 start");
if(!isUserProgram()) {
+ if(mConstants[0].get() == NULL) {
+ LOGE("Unable to set fixed function emulation matrices because allocation is missing");
+ rsc->setError(RS_ERROR_BAD_SHADER, "Fixed function allocation missing");
+ return;
+ }
float *f = static_cast<float *>(mConstants[0]->getPtr());
Matrix mvp;
mvp.load(&f[RS_PROGRAM_VERTEX_PROJECTION_OFFSET]);