summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorKonstantin Ritt <ritt.ks@gmail.com>2014-02-12 22:41:43 +0200
committerThe Qt Project <gerrit-noreply@qt-project.org>2014-02-13 09:35:29 +0100
commit03aabe6c6edd68fb429a92e567814b7aac802fc7 (patch)
treecf9ec4522e17a807791fda712c11fdf0a2631958 /src
parent235d5dde5c81d92a2a1254f81921c8221687b465 (diff)
Update HarfBuzz-NG path on Mac
84be1bd4d3ed8d2d9e65301649bc841ea4197fe2 has changed the stored data type from QFontEngine to QFontEngine::FaceData. Update the implementation and revert changing the y_scale sign on non-Mac (aka fix-up 2d576f79f748ca4c9bb54634f0fd44fa207a2248). Change-Id: I4180257bc8f610fb014fd2a2ad6f8fdceece2f13 Reviewed-by: Lars Knoll <lars.knoll@digia.com>
Diffstat (limited to 'src')
-rw-r--r--src/3rdparty/harfbuzz-ng/src/hb-coretext.cc2
-rw-r--r--src/gui/text/qharfbuzzng.cpp4
2 files changed, 5 insertions, 1 deletions
diff --git a/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc b/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc
index ef6798d380..5a34eddecc 100644
--- a/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc
+++ b/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc
@@ -83,7 +83,7 @@ _hb_coretext_shaper_face_data_create (hb_face_t *face)
if (unlikely (!data))
return NULL;
- QFontEngine *fe = (QFontEngine *) face->user_data;
+ QFontEngine *fe = (QFontEngine *) ((QFontEngine::FaceData *) face->user_data)->user_data;
if (fe->type () == QFontEngine::Mac)
{
data->cg_font = (CGFontRef) fe->userData ().value<void *> ();
diff --git a/src/gui/text/qharfbuzzng.cpp b/src/gui/text/qharfbuzzng.cpp
index 9f77083102..c09f27b665 100644
--- a/src/gui/text/qharfbuzzng.cpp
+++ b/src/gui/text/qharfbuzzng.cpp
@@ -703,7 +703,11 @@ _hb_qt_font_create(QFontEngine *fe)
const int x_ppem = (fe->fontDef.pixelSize * fe->fontDef.stretch) / 100;
hb_font_set_funcs(font, hb_qt_get_font_funcs(), (void *)fe, NULL);
+#ifdef Q_OS_MAC
hb_font_set_scale(font, QFixed(x_ppem).value(), QFixed(y_ppem).value());
+#else
+ hb_font_set_scale(font, QFixed(x_ppem).value(), -QFixed(y_ppem).value());
+#endif
hb_font_set_ppem(font, x_ppem, y_ppem);
return font;