From 9ab41425519510b5bfbe93ac916e3f40aa0e4510 Mon Sep 17 00:00:00 2001 From: Oswald Buddenhagen Date: Fri, 25 Apr 2014 14:11:49 +0200 Subject: centralize auxiliary lib creation this covers convenience libraries which are linked into dlls (if we are not building statically) and "proper" (installed) builds of 3rdparty code. Change-Id: I2f00248c0baa0e73346e477724bf49bbc62ba925 Reviewed-by: Konstantin Ritt Reviewed-by: Laszlo Agocs Reviewed-by: Friedemann Kleint Reviewed-by: Joerg Bornemann --- src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro | 9 +-------- 1 file changed, 1 insertion(+), 8 deletions(-) (limited to 'src/3rdparty') diff --git a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro index d505c30aa6..bd0475fc05 100644 --- a/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro +++ b/src/3rdparty/harfbuzz-ng/harfbuzz-ng.pro @@ -1,16 +1,11 @@ TARGET = qtharfbuzzng -TEMPLATE = lib CONFIG += \ static \ hide_symbols \ exceptions_off rtti_off -CONFIG -= qt -contains(QT_CONFIG, debug_and_release):CONFIG += debug_and_release -contains(QT_CONFIG, build_all):CONFIG += build_all - -DESTDIR = $$QT_BUILD_TREE/lib +load(qt_helper_lib) DEFINES += HAVE_CONFIG_H HEADERS += $$PWD/src/config.h @@ -133,5 +128,3 @@ mac { # even in 10.8 where they were also made available stand-alone. LIBS_PRIVATE += -framework ApplicationServices } - -TARGET = $$TARGET$$qtPlatformTargetSuffix() -- cgit v1.2.3 From 40b195d0f9ee7ef1b917a635bb073fa108b2ed40 Mon Sep 17 00:00:00 2001 From: Simon Hausmann Date: Fri, 25 Apr 2014 13:12:20 +0200 Subject: Fix font fallback handling with Harfbuzz and CoreText Comparing CGFontRefs is not reliable it seems, CFEqual on them appears to compare pointers and there's no guarantee that CTFontCopyGraphicsFont returns the same pointer all the time. So instead let's compare CTFontRefs, which we keep around and also provide as input to CoreText shaping. Task-number: 38363 Change-Id: I6073ea88f0c9f5ebf49d17cba0d76041ade32570 Reviewed-by: Eskil Abrahamsen Blomfeldt Reviewed-by: Konstantin Ritt --- src/3rdparty/harfbuzz-ng/src/hb-coretext.cc | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) (limited to 'src/3rdparty') diff --git a/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc b/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc index 4a905ee189..4fef861acc 100644 --- a/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc +++ b/src/3rdparty/harfbuzz-ng/src/hb-coretext.cc @@ -690,13 +690,10 @@ _hb_coretext_shape (hb_shape_plan_t *shape_plan, */ CFDictionaryRef attributes = CTRunGetAttributes (run); CTFontRef run_ct_font = static_cast(CFDictionaryGetValue (attributes, kCTFontAttributeName)); - CGFontRef run_cg_font = CTFontCopyGraphicsFont (run_ct_font, 0); CFRange range = CTRunGetStringRange (run); - if (!CFEqual (run_cg_font, face_data->cg_font)) + if (!CFEqual (run_ct_font, font_data->ct_font)) { - CFRelease (run_cg_font); - buffer->ensure (buffer->len + range.length); if (buffer->in_error) FAIL ("Buffer resize failed"); @@ -731,7 +728,6 @@ _hb_coretext_shape (hb_shape_plan_t *shape_plan, } continue; } - CFRelease (run_cg_font); /* CoreText throws away the PDF token, while the OpenType backend will add a zero-advance * glyph for this. We need to make sure the two produce the same output. */ -- cgit v1.2.3