[pango] Bug 608923 - Incorrect/broken ligatures on MacOS
- From: Kristian Rietveld <kristian src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [pango] Bug 608923 - Incorrect/broken ligatures on MacOS
- Date: Sun, 28 Feb 2010 12:52:05 +0000 (UTC)
commit 77f99dd9e17c5051b2b2dcfe6e7746f924e9f71b
Author: Kristian Rietveld <kris gtk org>
Date: Sun Feb 28 13:48:22 2010 +0100
Bug 608923 - Incorrect/broken ligatures on MacOS
Fix the basic ATSUI to probably work on 64-bit Snow Leopard. The main
culprit was most probably in the usage of CGFontRef, where ATSUFontID
was expected.
modules/basic/basic-atsui.c | 15 +++++++++------
1 files changed, 9 insertions(+), 6 deletions(-)
---
diff --git a/modules/basic/basic-atsui.c b/modules/basic/basic-atsui.c
index a3df773..369a596 100644
--- a/modules/basic/basic-atsui.c
+++ b/modules/basic/basic-atsui.c
@@ -86,21 +86,24 @@ basic_engine_shape (PangoEngineShape *engine,
const char *p;
PangoATSUIFont *afont = PANGO_ATSUI_FONT (font);
ATSUStyle style;
- CGFontRef fontID;
+ ATSUFontID fontID;
ATSUAttributeTag styleTags[] = { kATSUFontTag };
ATSUAttributeValuePtr styleValues[] = { &fontID };
- ByteCount styleSizes[] = { sizeof (CGFontRef) };
+ ByteCount styleSizes[] = { sizeof (ATSUFontID) };
utf16 = g_utf8_to_utf16 (text, length, NULL, &n16, NULL);
- err = ATSUCreateTextLayout (&text_layout);
- err = ATSUSetTextPointerLocation (text_layout, utf16, 0, n16, n16);
+ err = ATSUCreateTextLayoutWithTextPtr (utf16, 0, n16, n16,
+ 0,
+ NULL,
+ NULL,
+ &text_layout);
err = ATSUCreateStyle(&style);
- fontID = pango_atsui_font_get_cgfont (afont);
+ fontID = pango_atsui_font_get_atsfont (afont);
err = ATSUSetAttributes(style,
- sizeof(styleTags) / sizeof(styleTags[0]),
+ (ItemCount)(sizeof(styleTags) / sizeof(styleTags[0])),
styleTags, styleSizes, styleValues);
err = ATSUSetRunStyle(text_layout,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]