Calling CGFontCopyTableForTag did not affect the runtime results,
so try to actually access the data to see if that makes a
difference.
TBR=reed1
This is a test change, allow data to be collected.
Review URL: https://codereview.chromium.org/
1076183004
AutoCFRelease<CFDataRef> sbix;
if (static_cast<SkTypeface_Mac*>(context.getTypeface())->fHasColorGlyphs) {
sbix.reset(CGFontCopyTableForTag(context.fCGFont, 'sbix'));
+ // Attempt to read from the sbix table data to determine if the returned data is valid.
+ const UInt8* sbixData = CFDataGetBytePtr(sbix);
+ CFIndex sbixLength = CFDataGetLength(sbix);
+ if (sbixLength > 0 && *sbixData > 0x80) {
+ // We need to actually do something to avoid this being optimized away.
+ CFRetain(sbix);
+ CFRelease(sbix);
+ }
}
ctFontDrawGlyphs(context.fCTUnrotatedFont, &glyphID, &point, 1, fCG);