Improved object lifecycle tracking and fix leaks.
diff --git a/libs/rs/rsProgramFragment.cpp b/libs/rs/rsProgramFragment.cpp
index 5f685ff..708a0e0 100644
--- a/libs/rs/rsProgramFragment.cpp
+++ b/libs/rs/rsProgramFragment.cpp
@@ -27,6 +27,8 @@
ProgramFragment::ProgramFragment(Context *rsc, Element *in, Element *out, bool pointSpriteEnable) :
Program(rsc, in, out)
{
+ mAllocFile = __FILE__;
+ mAllocLine = __LINE__;
for (uint32_t ct=0; ct < MAX_TEXTURE; ct++) {
mEnvModes[ct] = RS_TEX_ENV_MODE_REPLACE;
mTextureDimensions[ct] = 2;
@@ -190,6 +192,12 @@
mDefault.set(pf);
}
+void ProgramFragmentState::deinit(Context *rsc)
+{
+ mDefault.clear();
+ mLast.clear();
+}
+
namespace android {
namespace renderscript {