diff options
author | 2014-10-22 12:07:00 -0700 | |
---|---|---|
committer | 2014-10-22 12:07:00 -0700 | |
commit | 2a1208017dd676f94a53bbb228197c3978dbdd8a (patch) | |
tree | c19f32da3e4187f459e526f13aab58cc24d8aa7d /bench/SkipZeroesBench.cpp | |
parent | 7a2df0c672d05301362b5ad13e01bfc62871200a (diff) |
Qualify the return value of SkImageDecoder::decode
Add a new enum to differentiate between a complete decode and a
partial decode (with the third value being failure). Return this
value from SkImageDecoder::onDecode (in all subclasses, plus
SkImageDecoder_empty) and ::decode.
For convenience, if the enum is treated as a boolean, success and
partial success are both considered true.
Note that the static helper functions (DecodeFile etc) still return
true and false (for one thing, this allows us to continue to use
SkImageDecoder::DecodeMemory as an SkPicture::InstallPixelRefProc in
SkPicture::CreateFromStream).
Also correctly report failure in SkASTCImageDecoder::onDecode when
SkTextureCompressor::DecompressBufferFromFormat fails.
BUG=skia:3037
BUG:b/17419670
Review URL: https://codereview.chromium.org/647023006
Diffstat (limited to 'bench/SkipZeroesBench.cpp')
-rw-r--r-- | bench/SkipZeroesBench.cpp | 8 |
1 files changed, 4 insertions, 4 deletions
diff --git a/bench/SkipZeroesBench.cpp b/bench/SkipZeroesBench.cpp index fc25f8b074..5d18264ea1 100644 --- a/bench/SkipZeroesBench.cpp +++ b/bench/SkipZeroesBench.cpp @@ -83,15 +83,15 @@ protected: // Decode a bunch of times SkBitmap bm; for (int i = 0; i < loops; ++i) { - SkDEBUGCODE(bool success =) fDecoder->decode(&fStream, &bm, - SkImageDecoder::kDecodePixels_Mode); + SkDEBUGCODE(SkImageDecoder::Result result =) fDecoder->decode(&fStream, &bm, + SkImageDecoder::kDecodePixels_Mode); #ifdef SK_DEBUG - if (!success) { + if (SkImageDecoder::kFailure == result) { SkDebugf("failed to decode %s\n", fFilename.c_str()); return; } #endif - SkDEBUGCODE(success =) fStream.rewind(); + SkDEBUGCODE(bool success =) fStream.rewind(); #ifdef SK_DEBUG if (!success) { SkDebugf("failed to rewind %s\n", fFilename.c_str()); |