From befef50c144655b042072ae98ffc14c030df4cdb Mon Sep 17 00:00:00 2001 From: Ilia Ki Date: Wed, 22 May 2024 10:05:32 +0700 Subject: [PATCH] The patch reduces memory usage in Skia and Android. Immutable bitmap pixels should not be copied if `kIfMutable_SkCopyPixelsMode` was passed. --- src/image/SkImage_Raster.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/image/SkImage_Raster.cpp b/src/image/SkImage_Raster.cpp index 4767c4988b7b..93365e29b447 100644 --- a/src/image/SkImage_Raster.cpp +++ b/src/image/SkImage_Raster.cpp @@ -168,7 +168,7 @@ sk_sp SkImage_Raster::onMakeSubset(skgpu::graphite::Recorder*, sk_sp SkMakeImageFromRasterBitmapPriv(const SkBitmap& bm, SkCopyPixelsMode cpm, uint32_t idForCopy) { - if (kAlways_SkCopyPixelsMode == cpm || (!bm.isImmutable() && kNever_SkCopyPixelsMode != cpm)) { + if (kAlways_SkCopyPixelsMode == cpm || (!bm.isImmutable() && kIfMutable_SkCopyPixelsMode == cpm)) { SkPixmap pmap; if (bm.peekPixels(&pmap)) { return MakeRasterCopyPriv(pmap, idForCopy);