From 70be405032622ea9d413111be7493c9b65eb9d77 Mon Sep 17 00:00:00 2001 From: tarsin Date: Fri, 23 Dec 2022 18:58:03 +0800 Subject: [PATCH] Free native source in advance if image is not Animated --- app/src/main/java/com/hippo/image/Image.kt | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/app/src/main/java/com/hippo/image/Image.kt b/app/src/main/java/com/hippo/image/Image.kt index 868f63911..40701670a 100644 --- a/app/src/main/java/com/hippo/image/Image.kt +++ b/app/src/main/java/com/hippo/image/Image.kt @@ -53,6 +53,8 @@ class Image private constructor(source: Source?, val release: () -> Unit = {}) { ) } // Should we lazy decode it? } + if (mObtainedDrawable is BitmapDrawable) + release() } val width = mObtainedDrawable!!.intrinsicWidth @@ -68,8 +70,9 @@ class Image private constructor(source: Source?, val release: () -> Unit = {}) { (mObtainedDrawable as BitmapDrawable?)?.bitmap?.recycle() } mObtainedDrawable?.callback = null + if (mObtainedDrawable is AnimatedImageDrawable) + release() mObtainedDrawable = null - release() } fun start() {