commit 810b2e6922f66125d5873c734e3523098e95d631
Author: Rex Dieter <rdieter(a)gmail.com>
Date: Tue Sep 21 13:41:46 2021 -0500
patch use of deprecated harfbuzz apis
qt5-qtwebengine-freeworld.spec | 8 +++++++-
qtwebengine-harfbuzz.patch | 34 ++++++++++++++++++++++++++++++++++
2 files changed, 41 insertions(+), 1 deletion(-)
---
diff --git a/qt5-qtwebengine-freeworld.spec b/qt5-qtwebengine-freeworld.spec
index 9d40355..e1194d6 100644
--- a/qt5-qtwebengine-freeworld.spec
+++ b/qt5-qtwebengine-freeworld.spec
@@ -51,7 +51,7 @@
Summary: Qt5 - QtWebEngine components (freeworld version)
Name: qt5-qtwebengine-freeworld
Version: 5.15.6
-Release: 1%{?dist}
+Release: 2%{?dist}
%global major_minor %(echo %{version} | cut -d. -f-2)
%global major %(echo %{version} | cut -d. -f1)
@@ -100,6 +100,8 @@ Patch31: qtwebengine-everywhere-src-5.15.5-TRUE.patch
# Issue 1213452: Sandbox doesn't work with clone3
#
https://bugs.chromium.org/p/chromium/issues/detail?id=1213452
Patch32: qtwebengine-everywhere-src-5.15.6-clone3.patch
+# Fix use of deprecated harfbuzz api's
+Patch33: qtwebengine-harfbuzz.patch
## Upstream patches:
# qtwebengine-chromium
@@ -377,6 +379,7 @@ popd
%patch30 -p1 -b .SIGSTKSZ
%patch31 -p1 -b .TRUE
%patch32 -p1 -b .clone3
+%patch33 -p1 -b .harfbuzz
# the xkbcommon config/feature was renamed in 5.12, so need to adjust QT_CONFIG
references
# when building on older Qt releases
@@ -468,6 +471,9 @@ echo "%{_libdir}/%{name}" \
%changelog
+* Tue Sep 21 2021 Rex Dieter <rdieter(a)fedoraproject.org> - 5.15.6-2
+- patch use of deprecated harfbuzz apis
+
* Fri Sep 03 2021 Rex Dieter <rdieter(a)fedoraproject.org> - 5.15.6-1
- 5.15.6
diff --git a/qtwebengine-harfbuzz.patch b/qtwebengine-harfbuzz.patch
new file mode 100644
index 0000000..cedfd16
--- /dev/null
+++ b/qtwebengine-harfbuzz.patch
@@ -0,0 +1,34 @@
+diff --git a/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
b/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
+index ba5391708..f5fad4148 100644
+--- a/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
++++ b/src/3rdparty/chromium/components/paint_preview/common/subset_font.cc
+@@ -71,9 +71,9 @@ sk_sp<SkData> SubsetFont(SkTypeface* typeface, const
GlyphUsage& usage) {
+ hb_set_t* glyphs =
+ hb_subset_input_glyph_set(input.get()); // Owned by |input|.
+ usage.ForEach(base::BindRepeating(&AddGlyphs, base::Unretained(glyphs)));
+- hb_subset_input_set_retain_gids(input.get(), true);
++ hb_subset_input_set_flags(input.get(), HB_SUBSET_FLAGS_RETAIN_GIDS);
+
+- HbScoped<hb_face_t> subset_face(hb_subset(face.get(), input.get()));
++ HbScoped<hb_face_t> subset_face(hb_subset_or_fail(face.get(), input.get()));
+ HbScoped<hb_blob_t> subset_blob(hb_face_reference_blob(subset_face.get()));
+ if (!subset_blob)
+ return nullptr;
+diff --git a/src/3rdparty/chromium/third_party/skia/src/pdf/SkPDFSubsetFont.cpp
b/src/3rdparty/chromium/third_party/skia/src/pdf/SkPDFSubsetFont.cpp
+index 81c37eef3..1581fb8a9 100644
+--- a/src/3rdparty/chromium/third_party/skia/src/pdf/SkPDFSubsetFont.cpp
++++ b/src/3rdparty/chromium/third_party/skia/src/pdf/SkPDFSubsetFont.cpp
+@@ -71,11 +71,10 @@ static sk_sp<SkData> subset_harfbuzz(sk_sp<SkData>
fontData,
+ hb_set_t* glyphs = hb_subset_input_glyph_set(input.get());
+ glyphUsage.getSetValues([&glyphs](unsigned gid) { hb_set_add(glyphs, gid);});
+
+- hb_subset_input_set_retain_gids(input.get(), true);
+ // TODO: When possible, check if a font is 'tricky' with FT_IS_TRICKY.
+ // If it isn't known if a font is 'tricky', retain the hints.
+- hb_subset_input_set_drop_hints(input.get(), false);
+- HBFace subset(hb_subset(face.get(), input.get()));
++ hb_subset_input_set_flags(input.get(), HB_SUBSET_FLAGS_RETAIN_GIDS |
HB_SUBSET_FLAGS_NO_HINTING);
++ HBFace subset(hb_subset_or_fail(face.get(), input.get()));
+ HBBlob result(hb_face_reference_blob(subset.get()));
+ return to_data(std::move(result));
+ }