[tbb-commits] [tor-browser] 27/34: Bug 1706441 - Check for non-empty span. r=gfx-reviewers, aosmond, a=dsmith
gitolite role
git at cupani.torproject.org
Wed Apr 27 16:05:08 UTC 2022
This is an automated email from the git hooks/post-receive script.
richard pushed a commit to branch tor-browser-91.9esr-11.0-1
in repository tor-browser.
commit b43a81f502f8890fa71787d1bfd083ead65d77a5
Author: Lee Salzman <lsalzman at mozilla.com>
AuthorDate: Wed Apr 6 16:11:18 2022 +0000
Bug 1706441 - Check for non-empty span. r=gfx-reviewers,aosmond,a=dsmith
Differential Revision: https://phabricator.services.mozilla.com/D142429
---
gfx/wr/swgl/src/swgl_ext.h | 42 ++++++++++++++++++++++++++----------------
1 file changed, 26 insertions(+), 16 deletions(-)
diff --git a/gfx/wr/swgl/src/swgl_ext.h b/gfx/wr/swgl/src/swgl_ext.h
index d3dee3cb88bea..b5cf845ed0a68 100644
--- a/gfx/wr/swgl/src/swgl_ext.h
+++ b/gfx/wr/swgl/src/swgl_ext.h
@@ -413,26 +413,36 @@ static P* blendTextureLinearDispatch(S sampler, vec2 uv, int span,
swgl_LinearQuantizeScale)) -
uv.x.x;
if (uv_step.x > 0.0f && insideDist >= uv_step.x) {
- int inside = int(end - buf);
+ int32_t inside = int(end - buf);
if (filter == LINEAR_FILTER_DOWNSCALE) {
- inside = clamp(int(insideDist * (0.5f / swgl_LinearQuantizeScale)) &
- ~(swgl_StepSize - 1),
- 0, inside);
- blendTextureLinearDownscale<BLEND>(sampler, uv, inside, min_uv, max_uv,
- color, buf);
+ inside = min(int(insideDist * (0.5f / swgl_LinearQuantizeScale)) &
+ ~(swgl_StepSize - 1),
+ inside);
+ if (inside > 0) {
+ blendTextureLinearDownscale<BLEND>(sampler, uv, inside, min_uv,
+ max_uv, color, buf);
+ buf += inside;
+ uv.x += (inside / swgl_StepSize) * uv_step.x;
+ }
} else if (filter == LINEAR_FILTER_UPSCALE) {
- inside = clamp(int(insideDist / uv_step.x) * swgl_StepSize, 0, inside);
- blendTextureLinearUpscale<BLEND>(sampler, uv, inside, uv_step, min_uv,
- max_uv, color, buf);
+ inside = min(int(insideDist / uv_step.x) * swgl_StepSize, inside);
+ if (inside > 0) {
+ blendTextureLinearUpscale<BLEND>(sampler, uv, inside, uv_step, min_uv,
+ max_uv, color, buf);
+ buf += inside;
+ uv.x += (inside / swgl_StepSize) * uv_step.x;
+ }
} else {
- inside = clamp(int(insideDist * (1.0f / swgl_LinearQuantizeScale)) &
- ~(swgl_StepSize - 1),
- 0, inside);
- blendTextureLinearFast<BLEND>(sampler, uv, inside, min_uv, max_uv,
- color, buf);
+ inside = min(int(insideDist * (1.0f / swgl_LinearQuantizeScale)) &
+ ~(swgl_StepSize - 1),
+ inside);
+ if (inside > 0) {
+ blendTextureLinearFast<BLEND>(sampler, uv, inside, min_uv, max_uv,
+ color, buf);
+ buf += inside;
+ uv.x += (inside / swgl_StepSize) * uv_step.x;
+ }
}
- buf += inside;
- uv.x += (inside / swgl_StepSize) * uv_step.x;
}
}
// If the fallback filter was requested, or if there are any samples left that
--
To stop receiving notification emails like this one, please contact
the administrator of this repository.
More information about the tbb-commits
mailing list