From 78b18bb2aab391ebf3bc7f44b72fd42ab691333f Mon Sep 17 00:00:00 2001 From: Nader Jawad Date: Mon, 27 Sep 2021 17:48:15 -0700 Subject: [PATCH] Fix initialization of snapshot SkImage instance Fix issue where the initial snapshot used to create a resultant SkImage instance with an SkImageFilter applied was not initialized. Fixes: 201312688 Test: Re-ran CTS tests Change-Id: I2440a161c70076850479c562c7c9e6dc8d756236 Merged-In: I2440a161c70076850479c562c7c9e6dc8d756236 --- libs/hwui/pipeline/skia/RenderNodeDrawable.cpp | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/libs/hwui/pipeline/skia/RenderNodeDrawable.cpp b/libs/hwui/pipeline/skia/RenderNodeDrawable.cpp index 2c81c971f7a66..48145d2331ee9 100644 --- a/libs/hwui/pipeline/skia/RenderNodeDrawable.cpp +++ b/libs/hwui/pipeline/skia/RenderNodeDrawable.cpp @@ -243,13 +243,12 @@ void RenderNodeDrawable::drawContent(SkCanvas* canvas) const { // the corresponding SkImageFilter each time. // See b/193145089 and b/197263715 if (!Properties::enableRenderEffectCache) { + snapshotImage = renderNode->getLayerSurface()->makeImageSnapshot(); if (imageFilter) { auto subset = SkIRect::MakeWH(srcBounds.width(), srcBounds.height()); snapshotImage = snapshotImage->makeWithFilter(recordingContext, imageFilter, subset, clipBounds.roundOut(), &srcBounds, &offset); - } else { - snapshotImage = renderNode->getLayerSurface()->makeImageSnapshot(); } } else { const auto snapshotResult = renderNode->updateSnapshotIfRequired(