aboutsummaryrefslogtreecommitdiffstats
path: root/src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java
diff options
context:
space:
mode:
authorJorge Ruesga <jorge@ruesga.com>2014-08-31 16:44:41 +0200
committerJorge Ruesga <jorge@ruesga.com>2014-08-31 16:44:41 +0200
commitc8d004f3be2bc071184dd32e17b87efccb3aca38 (patch)
treea500c6260b77454bf7a07b36dc14695d3c8770f2 /src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java
parenta523e7f3384fbab9cc398e2fd398bda8fc13663b (diff)
downloadandroid_packages_wallpapers_PhotoPhase-c8d004f3be2bc071184dd32e17b87efccb3aca38.tar.gz
android_packages_wallpapers_PhotoPhase-c8d004f3be2bc071184dd32e17b87efccb3aca38.tar.bz2
android_packages_wallpapers_PhotoPhase-c8d004f3be2bc071184dd32e17b87efccb3aca38.zip
photophase: fix memory leaks
* Fix memory leak caused by unreleased of framebuffers new refs * pre-cache Roboto typeface * trace allocations/deallocations GL's resources Change-Id: Ib1ca22aae7ba90c4282f91dcef69a5fe274017a8 Signed-off-by: Jorge Ruesga <jorge@ruesga.com>
Diffstat (limited to 'src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java')
-rw-r--r--src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java9
1 files changed, 9 insertions, 0 deletions
diff --git a/src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java b/src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java
index 25b2734..57fd98a 100644
--- a/src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java
+++ b/src/org/cyanogenmod/wallpapers/photophase/PhotoFrame.java
@@ -19,6 +19,7 @@ package org.cyanogenmod.wallpapers.photophase;
import android.content.Context;
import android.graphics.RectF;
import android.opengl.GLES20;
+import android.util.Log;
import org.cyanogenmod.wallpapers.photophase.utils.GLESUtil;
import org.cyanogenmod.wallpapers.photophase.utils.GLESUtil.GLColor;
@@ -139,6 +140,10 @@ public class PhotoFrame implements TextureRequestor {
if (mTextureInfo != null) {
if (GLES20.glIsTexture(mTextureInfo.handle)) {
int[] textures = new int[]{mTextureInfo.handle};
+ if (GLESUtil.DEBUG_GL_MEMOBJS) {
+ Log.d(GLESUtil.DEBUG_GL_MEMOBJS_DEL_TAG, "glDeleteTextures: ["
+ + mTextureInfo.handle + "]");
+ }
GLES20.glDeleteTextures(1, textures, 0);
GLESUtil.glesCheckError("glDeleteTextures");
}
@@ -279,6 +284,10 @@ public class PhotoFrame implements TextureRequestor {
public void recycle() {
if (mTextureInfo != null && mTextureInfo.handle != 0) {
int[] textures = new int[]{mTextureInfo.handle};
+ if (GLESUtil.DEBUG_GL_MEMOBJS) {
+ Log.d(GLESUtil.DEBUG_GL_MEMOBJS_DEL_TAG, "glDeleteTextures: ["
+ + mTextureInfo.handle + "]");
+ }
GLES20.glDeleteTextures(1, textures, 0);
GLESUtil.glesCheckError("glDeleteTextures");
}