Bug 1637152 - fix SWGL's handling of text bg-color blend-mode. r=jimb

Differential Revision: https://phabricator.services.mozilla.com/D74807
This commit is contained in:
Lee Salzman 2020-05-13 22:39:32 +00:00
Родитель b3c826b17b
Коммит f2f3dba2d9
1 изменённых файлов: 2 добавлений и 1 удалений

Просмотреть файл

@ -2411,7 +2411,8 @@ static inline WideRGBA8 blend_pixels_RGBA8(PackedRGBA8 pdst, WideRGBA8 src) {
case BLEND_KEY(GL_ONE, GL_ZERO):
return src;
case BLEND_KEY(GL_ONE_MINUS_DST_ALPHA, GL_ONE, GL_ZERO, GL_ONE):
return dst + ((src - muldiv255(src, alphas(src))) & RGB_MASK);
// src*(1-dst.a) + dst*1 = src - src*dst.a + dst
return dst + ((src - muldiv255(src, alphas(dst))) & RGB_MASK);
case BLEND_KEY(GL_CONSTANT_COLOR, GL_ONE_MINUS_SRC_COLOR):
// src*k + (1-src)*dst = src*k + dst - src*dst = dst + src*(k - dst)
// use addlow for signed overflow