aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/ports/SkImageGenerator_skia.cpp
diff options
context:
space:
mode:
authorGravatar scroggo <scroggo@chromium.org>2015-07-09 09:08:00 -0700
committerGravatar Commit bot <commit-bot@chromium.org>2015-07-09 09:08:00 -0700
commit5315fd4761a3c510dfff834a84e71e4c471951f9 (patch)
treea0fab94359f53b4c7e9411e06efffd4a801fe6af /src/ports/SkImageGenerator_skia.cpp
parentd17a32966afb2f7fdebfb58d37fa1b2d3e2d474b (diff)
Remove SkImageGenerator pieces only for SkCodec.
Follow up to the split between SkImageGenerator and SkCodec. Now that SkCodec does not inherit from SkImageGenerator, SkImageGenerator no longer needs Options or Result, which were added for SkCodec. Remove them, but keep them behind a flag, since Chromium has its own subclasses of SkImageGenerator which assume the old signature for onGetPixels. Review URL: https://codereview.chromium.org/1226023003
Diffstat (limited to 'src/ports/SkImageGenerator_skia.cpp')
-rw-r--r--src/ports/SkImageGenerator_skia.cpp24
1 files changed, 20 insertions, 4 deletions
diff --git a/src/ports/SkImageGenerator_skia.cpp b/src/ports/SkImageGenerator_skia.cpp
index 1784cc228b..f972253306 100644
--- a/src/ports/SkImageGenerator_skia.cpp
+++ b/src/ports/SkImageGenerator_skia.cpp
@@ -46,10 +46,14 @@ protected:
SkData* onRefEncodedData() override {
return SkRef(fData.get());
}
-
- virtual Result onGetPixels(const SkImageInfo& info, void* pixels, size_t rowBytes,
- const Options&,
- SkPMColor ctableEntries[], int* ctableCount) override {
+#ifdef SK_LEGACY_IMAGE_GENERATOR_ENUMS_AND_OPTIONS
+ Result onGetPixels(const SkImageInfo& info, void* pixels, size_t rowBytes,
+ const Options&,
+ SkPMColor ctableEntries[], int* ctableCount) override {
+#else
+ bool onGetPixels(const SkImageInfo& info, void* pixels, size_t rowBytes,
+ SkPMColor ctableEntries[], int* ctableCount) override {
+#endif
SkMemoryStream stream(fData->data(), fData->size(), false);
SkAutoTUnref<BareMemoryAllocator> allocator(SkNEW_ARGS(BareMemoryAllocator,
(info, pixels, rowBytes)));
@@ -60,7 +64,11 @@ protected:
const SkImageDecoder::Result result = fDecoder->decode(&stream, &bm, info.colorType(),
SkImageDecoder::kDecodePixels_Mode);
if (SkImageDecoder::kFailure == result) {
+#ifdef SK_LEGACY_IMAGE_GENERATOR_ENUMS_AND_OPTIONS
return kInvalidInput;
+#else
+ return false;
+#endif
}
SkASSERT(info.colorType() == bm.info().colorType());
@@ -70,16 +78,24 @@ protected:
SkColorTable* ctable = bm.getColorTable();
if (NULL == ctable) {
+#ifdef SK_LEGACY_IMAGE_GENERATOR_ENUMS_AND_OPTIONS
return kInvalidConversion;
+#else
+ return false;
+#endif
}
const int count = ctable->count();
memcpy(ctableEntries, ctable->readColors(), count * sizeof(SkPMColor));
*ctableCount = count;
}
+#ifdef SK_LEGACY_IMAGE_GENERATOR_ENUMS_AND_OPTIONS
if (SkImageDecoder::kPartialSuccess == result) {
return kIncompleteInput;
}
return kSuccess;
+#else
+ return true;
+#endif
}
bool onGetYUV8Planes(SkISize sizes[3], void* planes[3], size_t rowBytes[3],