libqt5-qtwebengine/chromium-older-harfbuzz.patch
Christophe Giboudeaux 5a4dcfd768 Accepting request 920659 from home:Vogtinator:qt5.15
Third try:

- Add patches from Arch to fix build with HarfBuzz 3.0.0:
  * chromium-harfbuzz-3.0.0.patch
  * skia-harfbuzz-3.0.0.patch
- ... but don't break with < 2.9.0:
  * chromium-older-harfbuzz.patch

OBS-URL: https://build.opensuse.org/request/show/920659
OBS-URL: https://build.opensuse.org/package/show/KDE:Qt:5.15/libqt5-qtwebengine?expand=0&rev=33
2021-09-22 17:19:46 +00:00

27 lines
1.2 KiB
Diff

From: Fabian Vogt <fvogt@suse.com>
Subject: Fix build with harfbuzz < 2.9.0
Index: qtwebengine-everywhere-src-5.15.6/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
===================================================================
--- qtwebengine-everywhere-src-5.15.6.orig/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
+++ qtwebengine-everywhere-src-5.15.6/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
@@ -71,11 +71,18 @@ sk_sp<SkData> SubsetFont(SkTypeface* typ
hb_set_t* glyphs =
hb_subset_input_glyph_set(input.get()); // Owned by |input|.
usage.ForEach(base::BindRepeating(&AddGlyphs, base::Unretained(glyphs)));
+#if HB_VERSION_ATLEAST(2,9,0)
hb_subset_input_set_flags(input.get(), HB_SUBSET_FLAGS_RETAIN_GIDS);
HbScoped<hb_face_t> subset_face(hb_subset_or_fail(face.get(), input.get()));
if (!subset_face)
return nullptr;
+#else
+ hb_subset_input_set_retain_gids(input.get(), true);
+
+ HbScoped<hb_face_t> subset_face(hb_subset(face.get(), input.get()));
+#endif
+
HbScoped<hb_blob_t> subset_blob(hb_face_reference_blob(subset_face.get()));
if (!subset_blob)
return nullptr;