diff --git a/expectations/gm/ignored-tests.txt b/expectations/gm/ignored-tests.txt index 4edbcc2cd5..4a431f050f 100644 --- a/expectations/gm/ignored-tests.txt +++ b/expectations/gm/ignored-tests.txt @@ -48,3 +48,7 @@ dashing dashing2 dashing3 dashcubics + +# humper: https://codereview.chromium.org/292773003/ +# changed texture coordinate generation for GPU rrect blur; will rebaseline after land. +simpleblurroundrect diff --git a/src/effects/SkBlurMaskFilter.cpp b/src/effects/SkBlurMaskFilter.cpp index 2169a42cb6..f263a02784 100644 --- a/src/effects/SkBlurMaskFilter.cpp +++ b/src/effects/SkBlurMaskFilter.cpp @@ -1040,13 +1040,13 @@ void GrGLRRectBlurEffect::emitCode(GrGLShaderBuilder* builder, builder->fsCodeAppendf("\t\tif (translatedFragPos.x >= threshold && translatedFragPos.x < (middle.x+threshold)) {\n" ); builder->fsCodeAppendf("\t\t\ttranslatedFragPos.x = threshold;\n"); builder->fsCodeAppendf("\t\t} else if (translatedFragPos.x >= (middle.x + threshold)) {\n"); - builder->fsCodeAppendf("\t\t\ttranslatedFragPos.x -= middle.x;\n"); + builder->fsCodeAppendf("\t\t\ttranslatedFragPos.x -= middle.x - 1.0;\n"); builder->fsCodeAppendf("\t\t}\n"); builder->fsCodeAppendf("\t\tif (translatedFragPos.y > threshold && translatedFragPos.y < (middle.y+threshold)) {\n" ); builder->fsCodeAppendf("\t\t\ttranslatedFragPos.y = threshold;\n"); builder->fsCodeAppendf("\t\t} else if (translatedFragPos.y >= (middle.y + threshold)) {\n"); - builder->fsCodeAppendf("\t\t\ttranslatedFragPos.y -= middle.y;\n"); + builder->fsCodeAppendf("\t\t\ttranslatedFragPos.y -= middle.y - 1.0;\n"); builder->fsCodeAppendf("\t\t}\n"); builder->fsCodeAppendf("\t\tvec2 proxyDims = vec2(2.0*threshold+1.0);\n");