diff options
| author | Chet Haase <chet@google.com> | 2010-10-22 09:07:13 -0700 |
|---|---|---|
| committer | Android (Google) Code Review <android-gerrit@google.com> | 2010-10-22 09:07:13 -0700 |
| commit | 0865f7629a6fc0dba81cb42451b3eba6f34efe9d (patch) | |
| tree | 5ed0ce7160f29fd4dc40bc69041d9356a8b52b61 /core | |
| parent | ea70e63c0dcd09ec5790f4dca6ddd76284a6a23d (diff) | |
| parent | 27f0b17d853d8bef918c3d869044e50cf3904ee3 (diff) | |
| download | frameworks_base-0865f7629a6fc0dba81cb42451b3eba6f34efe9d.zip frameworks_base-0865f7629a6fc0dba81cb42451b3eba6f34efe9d.tar.gz frameworks_base-0865f7629a6fc0dba81cb42451b3eba6f34efe9d.tar.bz2 | |
Merge "Fix native resource leak when OpenGL renderer is not being used."
Diffstat (limited to 'core')
| -rw-r--r-- | core/jni/android/graphics/Bitmap.cpp | 8 | ||||
| -rw-r--r-- | core/jni/android/graphics/Matrix.cpp | 4 | ||||
| -rw-r--r-- | core/jni/android/graphics/Paint.cpp | 4 |
3 files changed, 8 insertions, 8 deletions
diff --git a/core/jni/android/graphics/Bitmap.cpp b/core/jni/android/graphics/Bitmap.cpp index f8a80b0..8956e39 100644 --- a/core/jni/android/graphics/Bitmap.cpp +++ b/core/jni/android/graphics/Bitmap.cpp @@ -256,20 +256,20 @@ static void Bitmap_destructor(JNIEnv* env, jobject, SkBitmap* bitmap) { #ifdef USE_OPENGL_RENDERER
if (android::uirenderer::Caches::hasInstance()) {
android::uirenderer::Caches::getInstance().resourceCache.destructor(bitmap);
+ return;
}
-#else // !USE_OPENGL_RENDERER
+#endif // USE_OPENGL_RENDERER
delete bitmap;
-#endif
}
static void Bitmap_recycle(JNIEnv* env, jobject, SkBitmap* bitmap) {
#ifdef USE_OPENGL_RENDERER
if (android::uirenderer::Caches::hasInstance()) {
android::uirenderer::Caches::getInstance().resourceCache.recycle(bitmap);
+ return;
}
-#else // !USE_OPENGL_RENDERER
- bitmap->setPixels(NULL, NULL);
#endif // USE_OPENGL_RENDERER
+ bitmap->setPixels(NULL, NULL);
}
// These must match the int values in Bitmap.java
diff --git a/core/jni/android/graphics/Matrix.cpp b/core/jni/android/graphics/Matrix.cpp index 6667756..b305506 100644 --- a/core/jni/android/graphics/Matrix.cpp +++ b/core/jni/android/graphics/Matrix.cpp @@ -35,10 +35,10 @@ public: #ifdef USE_OPENGL_RENDERER if (android::uirenderer::Caches::hasInstance()) { android::uirenderer::Caches::getInstance().resourceCache.destructor(obj); + return; } -#else // !USE_OPENGL_RENDERER +#endif // USE_OPENGL_RENDERER delete obj; -#endif } static SkMatrix* create(JNIEnv* env, jobject clazz, const SkMatrix* src) { diff --git a/core/jni/android/graphics/Paint.cpp b/core/jni/android/graphics/Paint.cpp index 339c1a4..79a02f1 100644 --- a/core/jni/android/graphics/Paint.cpp +++ b/core/jni/android/graphics/Paint.cpp @@ -66,10 +66,10 @@ public: #ifdef USE_OPENGL_RENDERER if (android::uirenderer::Caches::hasInstance()) { android::uirenderer::Caches::getInstance().resourceCache.destructor(obj); + return; } -#else // !USE_OPENGL_RENDERER +#endif // USE_OPENGL_RENDERER delete obj; -#endif } static SkPaint* init(JNIEnv* env, jobject clazz) { |
