Fix AssetAtlas usage in BitmapShaders
bug:22521999
Change-Id: I60859748ceee19ebc89ec98845e550ea26e36ecd
diff --git a/libs/hwui/SkiaShader.cpp b/libs/hwui/SkiaShader.cpp
index a2aa2d1..81d8516 100644
--- a/libs/hwui/SkiaShader.cpp
+++ b/libs/hwui/SkiaShader.cpp
@@ -203,7 +203,13 @@
return false;
}
- outData->bitmapTexture = caches.textureCache.get(&bitmap);
+ /*
+ * Bypass the AssetAtlas, since those textures:
+ * 1) require UV mapping, which isn't implemented in matrix computation below
+ * 2) can't handle REPEAT simply
+ * 3) are safe to upload here (outside of sync stage), since they're static
+ */
+ outData->bitmapTexture = caches.textureCache.getAndBypassAtlas(&bitmap);
if (!outData->bitmapTexture) return false;
outData->bitmapSampler = (*textureUnit)++;