Index: src/core/SkBlitRow_D32.cpp |
diff --git a/src/core/SkBlitRow_D32.cpp b/src/core/SkBlitRow_D32.cpp |
index 07a5d875b88870f17a1e6d8cf23bfc3377ce0ae8..57d0ead2204e28f0df0091387300bf1531c5fc25 100644 |
--- a/src/core/SkBlitRow_D32.cpp |
+++ b/src/core/SkBlitRow_D32.cpp |
@@ -153,10 +153,10 @@ void SkBlitRow::Color32(SkPMColor dst[], const SkPMColor src[], int count, SkPMC |
invA += invA >> 7; |
SkASSERT(invA < 256); // We've already handled alpha == 0 above. |
- Sk16h colorHighAndRound = Sk4px(color).widenHi() + Sk16h(128); |
+ Sk16h colorHighAndRound = Sk4px::DupPMColor(color).widenHi() + Sk16h(128); |
Sk16b invA_16x(invA); |
Sk4px::MapSrc(count, dst, src, [&](const Sk4px& src4) -> Sk4px { |
- return src4.mulWiden(invA_16x).addNarrowHi(colorHighAndRound); |
+ return (src4 * invA_16x).addNarrowHi(colorHighAndRound); |
}); |
} |