Index: src/codec/SkSwizzler.cpp |
diff --git a/src/codec/SkSwizzler.cpp b/src/codec/SkSwizzler.cpp |
index debcd45c207048b5e96279a7ed5001e0695628cb..04560095bd0fd06936460cc3c48d6688874d4c18 100644 |
--- a/src/codec/SkSwizzler.cpp |
+++ b/src/codec/SkSwizzler.cpp |
@@ -11,13 +11,11 @@ |
#include "SkSwizzler.h" |
#include "SkTemplates.h" |
-static void copy(void* dst, const uint8_t* src, int width, int bpp, int deltaSrc, int offset, |
+static void noop(void* dst, const uint8_t* src, int width, int bpp, int deltaSrc, int offset, |
msarett
2016/02/05 20:48:18
This is broken as is.
It works for PNG, but I woul
|
const SkPMColor ctable[]) { |
// This function must not be called if we are sampling. If we are not |
// sampling, deltaSrc should equal bpp. |
SkASSERT(deltaSrc == bpp); |
- |
- memcpy(dst, src + offset, width * bpp); |
} |
static void sample1(void* dst, const uint8_t* src, int width, int bpp, int deltaSrc, int offset, |
@@ -400,7 +398,7 @@ static void fast_swizzle_bgra_to_n32_unpremul( |
#ifdef SK_PMCOLOR_IS_RGBA |
SkOpts::RGBA_to_BGRA((uint32_t*) dst, src + offset, width); |
#else |
- memcpy(dst, src + offset, width * bpp); |
+ // Nothing needs to be done here. |
#endif |
} |
@@ -525,7 +523,7 @@ static void fast_swizzle_rgba_to_n32_unpremul( |
SkASSERT(deltaSrc == bpp); |
#ifdef SK_PMCOLOR_IS_RGBA |
- memcpy(dst, src + offset, width * bpp); |
+ // Nothing needs to be done here. |
#else |
SkOpts::RGBA_to_BGRA((uint32_t*) dst, src + offset, width); |
#endif |
@@ -714,7 +712,7 @@ SkSwizzler* SkSwizzler::CreateSwizzler(SkSwizzler::SrcConfig sc, |
break; |
case kIndex_8_SkColorType: |
proc = &sample1; |
- fastProc = © |
+ fastProc = &noop; |
break; |
default: |
break; |
@@ -728,7 +726,7 @@ SkSwizzler* SkSwizzler::CreateSwizzler(SkSwizzler::SrcConfig sc, |
break; |
case kGray_8_SkColorType: |
proc = &sample1; |
- fastProc = © |
+ fastProc = &noop; |
break; |
case kRGB_565_SkColorType: |
proc = &swizzle_gray_to_565; |
@@ -854,15 +852,15 @@ SkSwizzler* SkSwizzler::CreateSwizzler(SkSwizzler::SrcConfig sc, |
break; |
case kNoOp8: |
proc = &sample1; |
- fastProc = © |
+ fastProc = &noop; |
break; |
case kNoOp16: |
proc = sample2; |
- fastProc = © |
+ fastProc = &noop; |
break; |
case kNoOp32: |
proc = &sample4; |
- fastProc = © |
+ fastProc = &noop; |
break; |
default: |
break; |
@@ -883,6 +881,7 @@ SkSwizzler* SkSwizzler::CreateSwizzler(SkSwizzler::SrcConfig sc, |
srcOffset = options.fSubset->left(); |
srcWidth = options.fSubset->width(); |
dstWidth = srcWidth; |
+ fastProc = nullptr; |
msarett
2016/02/05 20:48:18
Problem:
We need the swizzler to do a copy for us
|
} else if (frame) { |
dstOffset = frame->left(); |
srcWidth = frame->width(); |