behdad/harfbuzz — pull request #36 by jjgod (2014-03-26 08:32:12+00:00)
Title: Fix coretext shaper on how to decide fallbacks happen

coretext shaper returns all 0 glyph IDs even for non-fallback fonts. It's cause it currently compares the `CGFont` copied from the `CTRun` with the `CGFont` used when creating the original `CTFont`, a technique shown in [WebKit](https://github.com/WebKit/webkit/blob/master/Source/WebCore/platform/graphics/mac/GlyphPageTreeNodeMac.cpp#L134). However, `CFEqual()` seemed to return false even for identical fonts getting from single `CTRun` without any fallback happening. A [different place](https://github.com/WebKit/webkit/blob/master/Source/WebCore/platform/graphics/mac/ComplexTextControllerCoreText.mm#L249) in WebKit does show a different method, i.e. comparing the `CTFont`s directly instead, which seemed to work for me. (On OS X 10.9)