diff options
author | Jason Sams <rjsams@android.com> | 2010-11-17 15:29:32 -0800 |
---|---|---|
committer | Jason Sams <rjsams@android.com> | 2010-11-17 15:29:32 -0800 |
commit | a17af04e62a3f40f729e7ebb8bd868d192e18405 (patch) | |
tree | 1cbd4b4e3fcb86d318b2825758fcf89733adf3e0 /libs/rs/rsScriptC.cpp | |
parent | 81c4cea9ec4b08f8c06fdef86d51069adb739eb7 (diff) |
Create holder inner class for pushing context state.
Fix bug with rsForEach corrupting parent context state.
Remove workaround from rsBalls.
Change-Id: I43a948536e70d44645d1c2ef7b97e1c5906f6943
Diffstat (limited to 'libs/rs/rsScriptC.cpp')
-rw-r--r-- | libs/rs/rsScriptC.cpp | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libs/rs/rsScriptC.cpp b/libs/rs/rsScriptC.cpp index 072cc1681730..ec7780e13a63 100644 --- a/libs/rs/rsScriptC.cpp +++ b/libs/rs/rsScriptC.cpp @@ -104,16 +104,16 @@ Script * ScriptC::setTLS(Script *sc) { void ScriptC::setupGLState(Context *rsc) { if (mEnviroment.mFragmentStore.get()) { - rsc->setFragmentStore(mEnviroment.mFragmentStore.get()); + rsc->setProgramStore(mEnviroment.mFragmentStore.get()); } if (mEnviroment.mFragment.get()) { - rsc->setFragment(mEnviroment.mFragment.get()); + rsc->setProgramFragment(mEnviroment.mFragment.get()); } if (mEnviroment.mVertex.get()) { - rsc->setVertex(mEnviroment.mVertex.get()); + rsc->setProgramVertex(mEnviroment.mVertex.get()); } if (mEnviroment.mRaster.get()) { - rsc->setRaster(mEnviroment.mRaster.get()); + rsc->setProgramRaster(mEnviroment.mRaster.get()); } } @@ -232,6 +232,7 @@ void ScriptC::runForEach(Context *rsc, const RsScriptCall *sc) { MTLaunchStruct mtls; memset(&mtls, 0, sizeof(mtls)); + Context::PushState ps(rsc); if (ain) { mtls.dimX = ain->getType()->getDimX(); |