From 1597220a05f4947d92f3e77e2c68df4a2eda95b6 Mon Sep 17 00:00:00 2001 From: Aaron Clarke Date: Thu, 22 Feb 2024 13:02:55 -0800 Subject: [PATCH] [Impeller] moved the kernel size assert to a more appropriate location. --- .../contents/filters/gaussian_blur_filter_contents.cc | 7 ++++--- 1 file changed, 4 insertions(+), 3 deletions(-) diff --git a/impeller/entity/contents/filters/gaussian_blur_filter_contents.cc b/impeller/entity/contents/filters/gaussian_blur_filter_contents.cc index 9df1ed5ec6961..93d5dd760f3ed 100644 --- a/impeller/entity/contents/filters/gaussian_blur_filter_contents.cc +++ b/impeller/entity/contents/filters/gaussian_blur_filter_contents.cc @@ -173,9 +173,11 @@ fml::StatusOr MakeBlurSubpass( linear_sampler_descriptor)); GaussianBlurVertexShader::BindFrameInfo( pass, host_buffer.EmplaceUniform(frame_info)); + KernelPipeline::FragmentShader::KernelSamples kernel_samples = + LerpHackKernelSamples(GenerateBlurInfo(blur_info)); + FML_CHECK(kernel_samples.sample_count < kMaxKernelSize); GaussianBlurFragmentShader::BindKernelSamples( - pass, host_buffer.EmplaceUniform( - LerpHackKernelSamples(GenerateBlurInfo(blur_info)))); + pass, host_buffer.EmplaceUniform(kernel_samples)); return pass.Draw().ok(); }; if (destination_target.has_value()) { @@ -478,7 +480,6 @@ KernelPipeline::FragmentShader::KernelSamples GenerateBlurInfo( KernelPipeline::FragmentShader::KernelSamples result; result.sample_count = ((2 * parameters.blur_radius) / parameters.step_size) + 1; - FML_CHECK(result.sample_count < kMaxKernelSize); // Chop off the last samples if the radius >= 3 where they account for < 1.56% // of the result.