diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/core/SkBlitter_ARGB32.cpp | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/src/core/SkBlitter_ARGB32.cpp b/src/core/SkBlitter_ARGB32.cpp index 6ca88d7d1b..446bf3551d 100644 --- a/src/core/SkBlitter_ARGB32.cpp +++ b/src/core/SkBlitter_ARGB32.cpp @@ -631,10 +631,10 @@ void SkARGB32_Shader_Blitter::blitV(int x, int y, int height, SkAlpha alpha) { device = (uint32_t*)((char*)device + deviceRB); } while (--height > 0); } else { - // can't use fProc, since we need to use an unknown alpha + SkBlitRow::Proc32 proc = (255 == alpha) ? fProc32 : fProc32Blend; do { shader->shadeSpan(x, y, span, 1); - *device = SkFourByteInterp(*span, *device, alpha); + proc(device, span, 1, alpha); y += 1; device = (uint32_t*)((char*)device + deviceRB); } while (--height > 0); |