diff --git a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Context.kt b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Context.kt index d8232a83e..2ef92ecfc 100644 --- a/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Context.kt +++ b/app/src/main/kotlin/com/simplemobiletools/gallery/pro/extensions/Context.kt @@ -15,6 +15,8 @@ import android.provider.MediaStore.Images import android.widget.ImageView import com.bumptech.glide.Glide import com.bumptech.glide.Priority +import com.bumptech.glide.integration.webp.WebpBitmapFactory +import com.bumptech.glide.integration.webp.decoder.WebpDownsampler import com.bumptech.glide.integration.webp.decoder.WebpDrawable import com.bumptech.glide.integration.webp.decoder.WebpDrawableTransformation import com.bumptech.glide.load.DataSource @@ -539,9 +541,11 @@ fun Context.loadImageBase( options.optionalTransform(WebpDrawable::class.java, MultiTransformation(WebpDrawableTransformation(CenterCrop()), WebpDrawableTransformation(roundedCornersTransform))) } + WebpBitmapFactory.sUseSystemDecoder = false // CVE-2023-4863 var builder = Glide.with(applicationContext) .load(path) .apply(options) + .set(WebpDownsampler.USE_SYSTEM_DECODER, false) // CVE-2023-4863 .transition(DrawableTransitionOptions.withCrossFade(crossFadeDuration)) if (tryLoadingWithPicasso) { diff --git a/gradle/libs.versions.toml b/gradle/libs.versions.toml index 579490b55..e9fc03656 100644 --- a/gradle/libs.versions.toml +++ b/gradle/libs.versions.toml @@ -19,10 +19,10 @@ gradlePlugins-agp = "7.4.0" #Other androidGifDrawable = "1.2.25" androidImageCropper = "4.5.0" -apng = "2.25.0" -awebp = "2.25.0" -glideCompiler = "4.15.1" -zjupureWebpdecoder = "2.3.4.15.1" +apng = "2.28.0" +awebp = "2.28.0" +glideCompiler = "4.16.0" +zjupureWebpdecoder = "2.6.4.16.0" gestureviews = "a8e8fa8d27" androidsvgAar = "1.4" imagefilters = "1.0.7"