| Index: src/gpu/GrBatchFontCache.cpp
|
| diff --git a/src/gpu/GrBatchFontCache.cpp b/src/gpu/GrBatchFontCache.cpp
|
| index ecaa91e74d47e3e06a470abd610840fc78fd5ec1..dc5b43a54736759b2b325d8d7eccd45f40660239 100644
|
| --- a/src/gpu/GrBatchFontCache.cpp
|
| +++ b/src/gpu/GrBatchFontCache.cpp
|
| @@ -196,7 +196,8 @@ void GrBatchTextStrike::removeID(GrBatchAtlas::AtlasID id) {
|
| }
|
|
|
| bool GrBatchTextStrike::addGlyphToAtlas(GrBatchTarget* batchTarget, GrGlyph* glyph,
|
| - GrFontScaler* scaler, const SkGlyph& skGlyph) {
|
| + GrFontScaler* scaler, const SkGlyph& skGlyph,
|
| + GrMaskFormat expectedMaskFormat) {
|
| SkASSERT(glyph);
|
| SkASSERT(scaler);
|
| SkASSERT(fCache.find(glyph->fPackedID));
|
| @@ -204,7 +205,7 @@ bool GrBatchTextStrike::addGlyphToAtlas(GrBatchTarget* batchTarget, GrGlyph* gly
|
|
|
| SkAutoUnref ar(SkSafeRef(scaler));
|
|
|
| - int bytesPerPixel = GrMaskFormatBytesPerPixel(glyph->fMaskFormat);
|
| + int bytesPerPixel = GrMaskFormatBytesPerPixel(expectedMaskFormat);
|
|
|
| size_t size = glyph->fBounds.area() * bytesPerPixel;
|
| SkAutoSMalloc<1024> storage(size);
|
| @@ -216,12 +217,13 @@ bool GrBatchTextStrike::addGlyphToAtlas(GrBatchTarget* batchTarget, GrGlyph* gly
|
| }
|
| } else {
|
| if (!scaler->getPackedGlyphImage(skGlyph, glyph->width(), glyph->height(),
|
| - glyph->width() * bytesPerPixel, storage.get())) {
|
| + glyph->width() * bytesPerPixel, expectedMaskFormat,
|
| + storage.get())) {
|
| return false;
|
| }
|
| }
|
|
|
| - bool success = fBatchFontCache->addToAtlas(this, &glyph->fID, batchTarget, glyph->fMaskFormat,
|
| + bool success = fBatchFontCache->addToAtlas(this, &glyph->fID, batchTarget, expectedMaskFormat,
|
| glyph->width(), glyph->height(),
|
| storage.get(), &glyph->fAtlasLocation);
|
| if (success) {
|
|
|