| Index: src/core/SkBlitter_ARGB32.cpp
|
| diff --git a/src/core/SkBlitter_ARGB32.cpp b/src/core/SkBlitter_ARGB32.cpp
|
| index 7adab5544537fd052897d4dfdcb3e4a6b20246b4..aada0586a4b2dfb0bd7e2e9ae221b613b41138d1 100644
|
| --- a/src/core/SkBlitter_ARGB32.cpp
|
| +++ b/src/core/SkBlitter_ARGB32.cpp
|
| @@ -237,7 +237,11 @@ void SkARGB32_Blitter::blitV(int x, int y, int height, SkAlpha alpha) {
|
| color = SkAlphaMulQ(color, SkAlpha255To256(alpha));
|
| }
|
|
|
| +#ifdef SK_SUPPORT_LEGACY_BROKEN_LERP
|
| unsigned dst_scale = 255 - SkGetPackedA32(color);
|
| +#else
|
| + unsigned dst_scale = SkAlpha255To256(255 - SkGetPackedA32(color));
|
| +#endif
|
| size_t rowBytes = fDevice.rowBytes();
|
| while (--height >= 0) {
|
| device[0] = color + SkAlphaMulQ(device[0], dst_scale);
|
|
|