Disabled YUV decoding for subsets

Image subsets were always showing the same tile and were causing an image to be fully YUV decoded once per tile, which was both slow and wrong.

BUG=413001, 419718

Review URL: https://codereview.chromium.org/661483002
This commit is contained in:
sugoi 2014-10-16 05:19:31 -07:00 committed by Commit bot
parent 30bc88ccd5
commit ff58e4679b

View File

@ -220,6 +220,12 @@ static GrTexture *load_etc1_texture(GrContext* ctx, bool cache,
static GrTexture *load_yuv_texture(GrContext* ctx, bool cache, const GrTextureParams* params,
const SkBitmap& bm, const GrTextureDesc& desc) {
// Subsets are not supported, the whole pixelRef is loaded when using YUV decoding
if ((bm.pixelRef()->info().width() != bm.info().width()) ||
(bm.pixelRef()->info().height() != bm.info().height())) {
return NULL;
}
SkPixelRef* pixelRef = bm.pixelRef();
SkISize yuvSizes[3];
if ((NULL == pixelRef) || !pixelRef->getYUV8Planes(yuvSizes, NULL, NULL, NULL)) {