Bug 608923 - Incorrect/broken ligatures on MacOS
Incorrect/broken ligatures on MacOS
Status: RESOLVED FIXED
Product: pango
Classification: Platform
Component: atsui
1.26.x
Other Mac OS
: Normal normal
: ---
Assigned To: gtk-quartz maintainers
pango-maint
:
Depends on:
Blocks:
  Show dependency tree
 
Reported: 2010-02-03 21:06 UTC by Michael Hutchinson
Modified: 2010-02-28 12:52 UTC (History)
0 users

See Also:
GNOME target: ---
GNOME version: ---


Attachments
screen of 2char sequence (189.88 KB, image/png)
2010-02-10 18:33 UTC, Alessio Caiazza
  Details
patch (1.35 KB, patch)
2010-02-28 12:01 UTC, Kristian Rietveld
none Details | Diff | Review

Description Michael Hutchinson 2010-02-03 21:06:17 UTC
Using Pango 1.26.2 and GTK 2.18.5, I'm seeing issues with incorrect ligatures.

For example, "fi" is *always* replaced:
* in the UI font Lucida Grande, replaced by a vertical line with 2 horizontal lines through it
* in the Monaco *monospace* font, replaced by an fi ligature
* in the Menlo monospace font replaced by the glyph þ

None of these substitutions happens with these fonts on my Linux machine with 1.26.0.

I've tried figuring it out but I'm having trouble finding where to look. Tried patching the CoreText->ATSUI reversion from Pango trunk into 2.26.2 but that doesn't help.
Comment 1 Kristian Rietveld 2010-02-03 21:20:36 UTC
I am aware of this and right now what I suspect is that this is related to ATSUI usage from 64-bit Snow Leopard.  In case you are on a 32-bit Mac, then this would contradict my current state of thoughts.  The state of ATSUI on Snow Leopard seems not fully clear, as far as I have understood it is only partly supported in the 64-bit frameworks.

My current plan of action is to actually sit down and write a CoreText backend for Pango which will be the default backend to use on systems running Leopard or later.  This has to happen either way since ATSUI has been deprecated and seems more productive to me than trying to find out what exactly goes wrong with ATSUI on 64-bit (which kinda feels like trying to find a needle in a haystack ...).
Comment 2 Michael Hutchinson 2010-02-03 21:32:17 UTC
We run in 32-bit mode only. Previously on OS X we used 1.22.4 which didn't have this issue, even on Snow Leopard, though it was built on 10.4.
Comment 3 Alessio Caiazza 2010-02-10 18:33:11 UTC
Created attachment 153452 [details]
screen of 2char sequence

Also "fl" is replaced.

➜  ~  port installed | grep pango
  pango @1.24.5_0+macosx+no_x11+quartz
  pango @1.26.0_0+macosx+no_x11+quartz
  pango @1.26.2_0+macosx+no_x11+quartz (active)

On OS X 10.6.2 64bit
Comment 4 Kristian Rietveld 2010-02-28 12:01:08 UTC
Created attachment 154892 [details] [review]
patch

I managed to track this down.  I will test on Tiger and if it does not break things there, commit to trunk.
Comment 5 Kristian Rietveld 2010-02-28 12:52:38 UTC
Tested on 32-bit Tiger.  Pushed to master.

Note You need to log in before you can comment on or make changes to this bug.