aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/android/SkBitmapRegionCanvas.cpp
diff options
context:
space:
mode:
authorGravatar msarett <msarett@google.com>2015-12-11 07:38:50 -0800
committerGravatar Commit bot <commit-bot@chromium.org>2015-12-11 07:38:50 -0800
commit9a0e3467da2a61ec81f676c147c21c77de91fccf (patch)
tree34f92186cea75a2af48dc76d3cb0bdf8905d2317 /src/android/SkBitmapRegionCanvas.cpp
parente804292e805917002cc3d7baa7f967fb20d2c7cb (diff)
Make BitmapRegionDecoder succeed on invalid requests
If the client requests a color type or alpha type that is not supported, we should decode to the default/appropriate color and alpha types to match existing behavior in Android. BUG=skia: Review URL: https://codereview.chromium.org/1513023002
Diffstat (limited to 'src/android/SkBitmapRegionCanvas.cpp')
-rw-r--r--src/android/SkBitmapRegionCanvas.cpp3
1 files changed, 1 insertions, 2 deletions
diff --git a/src/android/SkBitmapRegionCanvas.cpp b/src/android/SkBitmapRegionCanvas.cpp
index bac5dc1ffc..c7c42bd9a2 100644
--- a/src/android/SkBitmapRegionCanvas.cpp
+++ b/src/android/SkBitmapRegionCanvas.cpp
@@ -18,6 +18,7 @@ SkBitmapRegionCanvas::SkBitmapRegionCanvas(SkCodec* decoder)
bool SkBitmapRegionCanvas::decodeRegion(SkBitmap* bitmap, SkBRDAllocator* allocator,
const SkIRect& desiredSubset, int sampleSize, SkColorType dstColorType,
bool requireUnpremul) {
+
// Reject color types not supported by this method
if (kIndex_8_SkColorType == dstColorType || kGray_8_SkColorType == dstColorType) {
SkCodecPrintf("Error: Color type not supported.\n");
@@ -34,8 +35,6 @@ bool SkBitmapRegionCanvas::decodeRegion(SkBitmap* bitmap, SkBRDAllocator* alloca
dstAlphaType = kPremul_SkAlphaType;
}
- // FIXME: Can we add checks and support kIndex8 or unpremultiplied alpha in special cases?
-
// Fix the input sampleSize if necessary.
if (sampleSize < 1) {
sampleSize = 1;