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
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)) {