| Index: src/core/SkConvolver.cpp
|
| diff --git a/src/core/SkConvolver.cpp b/src/core/SkConvolver.cpp
|
| index 7666e6fadc99ac3b161403c91bee35fa0fdbe529..0e97fac07ffc5083cad6d045247c37e388428cd6 100644
|
| --- a/src/core/SkConvolver.cpp
|
| +++ b/src/core/SkConvolver.cpp
|
| @@ -405,7 +405,7 @@ void BGRAConvolve2D(const unsigned char* sourceData,
|
| const unsigned char* src[4];
|
| unsigned char* outRow[4];
|
| for (int i = 0; i < 4; ++i) {
|
| - src[i] = &sourceData[(nextXRow + i) * sourceByteRowStride];
|
| + src[i] = &sourceData[(uint64_t)(nextXRow + i) * sourceByteRowStride];
|
| outRow[i] = rowBuffer.advanceRow();
|
| }
|
| convolveProcs.fConvolve4RowsHorizontally(src, filterX, outRow);
|
| @@ -416,16 +416,16 @@ void BGRAConvolve2D(const unsigned char* sourceData,
|
| nextXRow < lastFilterOffset + lastFilterLength -
|
| avoidSimdRows) {
|
| convolveProcs.fConvolveHorizontally(
|
| - &sourceData[nextXRow * sourceByteRowStride],
|
| + &sourceData[(uint64_t)nextXRow * sourceByteRowStride],
|
| filterX, rowBuffer.advanceRow(), sourceHasAlpha);
|
| } else {
|
| if (sourceHasAlpha) {
|
| ConvolveHorizontally<true>(
|
| - &sourceData[nextXRow * sourceByteRowStride],
|
| + &sourceData[(uint64_t)nextXRow * sourceByteRowStride],
|
| filterX, rowBuffer.advanceRow());
|
| } else {
|
| ConvolveHorizontally<false>(
|
| - &sourceData[nextXRow * sourceByteRowStride],
|
| + &sourceData[(uint64_t)nextXRow * sourceByteRowStride],
|
| filterX, rowBuffer.advanceRow());
|
| }
|
| }
|
|
|