Index: src/effects/SkColorFilterImageFilter.cpp |
diff --git a/src/effects/SkColorFilterImageFilter.cpp b/src/effects/SkColorFilterImageFilter.cpp |
index b5ab255ce71b46fdd9b9582dbfe3f20421f55f0a..1d3cfee1c398fd413f9399f805ee92a82162330f 100755 |
--- a/src/effects/SkColorFilterImageFilter.cpp |
+++ b/src/effects/SkColorFilterImageFilter.cpp |
@@ -98,7 +98,11 @@ bool SkColorFilterImageFilter::onFilterImage(Proxy* proxy, const SkBitmap& sourc |
const SkMatrix& matrix, |
SkBitmap* result, |
SkIPoint* loc) { |
- SkBitmap src = this->getInputResult(0, proxy, source, matrix, loc); |
+ SkBitmap src = source; |
+ if (getInput(0) && !getInput(0)->filterImage(proxy, source, matrix, &src, loc)) { |
+ return false; |
+ } |
+ |
SkAutoTUnref<SkDevice> device(proxy->createDevice(src.width(), src.height())); |
SkCanvas canvas(device.get()); |
SkPaint paint; |