summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Gilbert <floppym@gentoo.org>2018-10-21 11:16:26 -0400
committerMike Gilbert <floppym@gentoo.org>2018-10-21 11:17:02 -0400
commit71fefc9233564d56103ad143ff8e768d18bcf89b (patch)
treeef502a0ebd3b8b653bafad1895f423555d8ee103 /www-client/chromium/files
parentx11-misc/lightdm: Readded acidentally removed file. (diff)
downloadgentoo-71fefc9233564d56103ad143ff8e768d18bcf89b.tar.gz
gentoo-71fefc9233564d56103ad143ff8e768d18bcf89b.tar.bz2
gentoo-71fefc9233564d56103ad143ff8e768d18bcf89b.zip
www-client/chromium: fix build with harfbuzz-2
Bug: https://bugs.gentoo.org/669034 Package-Manager: Portage-2.3.51_p1, Repoman-2.3.11_p26 Signed-off-by: Mike Gilbert <floppym@gentoo.org>
Diffstat (limited to 'www-client/chromium/files')
-rw-r--r--www-client/chromium/files/chromium-harfbuzz-r0.patch80
1 files changed, 80 insertions, 0 deletions
diff --git a/www-client/chromium/files/chromium-harfbuzz-r0.patch b/www-client/chromium/files/chromium-harfbuzz-r0.patch
new file mode 100644
index 000000000000..2d5602de280d
--- /dev/null
+++ b/www-client/chromium/files/chromium-harfbuzz-r0.patch
@@ -0,0 +1,80 @@
+From 7ae38170a117e909bb28e1470842b68de3501197 Mon Sep 17 00:00:00 2001
+From: Mike Gilbert <floppymaster@gmail.com>
+Date: Sun, 21 Oct 2018 10:06:53 -0400
+Subject: [PATCH] blink: add 'const' modifier for harfbuzz hb_codepoint_t
+ pointers
+
+This resolves a build failure against harfbuzz 2.0.
+
+Based on a patch by Alexandre Fierreira.
+
+Bug: https://bugs.gentoo.org/669034
+---
+ .../renderer/platform/fonts/shaping/harfbuzz_face.cc | 2 +-
+ .../renderer/platform/fonts/skia/skia_text_metrics.cc | 9 +++++++--
+ .../renderer/platform/fonts/skia/skia_text_metrics.h | 2 +-
+ 3 files changed, 9 insertions(+), 4 deletions(-)
+
+diff --git a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
+index 8e7d91ca371f..e279a5876cb3 100644
+--- a/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
++++ b/third_party/blink/renderer/platform/fonts/shaping/harfbuzz_face.cc
+@@ -139,7 +139,7 @@ static hb_position_t HarfBuzzGetGlyphHorizontalAdvance(hb_font_t* hb_font,
+ static void HarfBuzzGetGlyphHorizontalAdvances(hb_font_t* font,
+ void* font_data,
+ unsigned count,
+- hb_codepoint_t* first_glyph,
++ const hb_codepoint_t* first_glyph,
+ unsigned int glyph_stride,
+ hb_position_t* first_advance,
+ unsigned int advance_stride,
+diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
+index 77ec6209fab9..9f9070921448 100644
+--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.cc
+@@ -18,6 +18,11 @@ T* advance_by_byte_size(T* p, unsigned byte_size) {
+ return reinterpret_cast<T*>(reinterpret_cast<uint8_t*>(p) + byte_size);
+ }
+
++template <class T>
++T* advance_by_byte_size_const(T* p, unsigned byte_size) {
++ return reinterpret_cast<T*>(reinterpret_cast<const uint8_t*>(p) + byte_size);
++}
++
+ } // namespace
+
+ SkiaTextMetrics::SkiaTextMetrics(const SkPaint* paint) : paint_(paint) {
+@@ -39,7 +44,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(hb_codepoint_t codepoint,
+ }
+
+ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
+- hb_codepoint_t* glyphs,
++ const hb_codepoint_t* glyphs,
+ unsigned glyph_stride,
+ hb_position_t* advances,
+ unsigned advance_stride) {
+@@ -48,7 +53,7 @@ void SkiaTextMetrics::GetGlyphWidthForHarfBuzz(unsigned count,
+ // array that copy them to a regular array.
+ Vector<Glyph, 256> glyph_array(count);
+ for (unsigned i = 0; i < count;
+- i++, glyphs = advance_by_byte_size(glyphs, glyph_stride)) {
++ i++, glyphs = advance_by_byte_size_const(glyphs, glyph_stride)) {
+ glyph_array[i] = *glyphs;
+ }
+ Vector<SkScalar, 256> sk_width_array(count);
+diff --git a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
+index 787d8af0375a..3bc4407c641b 100644
+--- a/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
++++ b/third_party/blink/renderer/platform/fonts/skia/skia_text_metrics.h
+@@ -19,7 +19,7 @@ class SkiaTextMetrics final {
+
+ void GetGlyphWidthForHarfBuzz(hb_codepoint_t, hb_position_t* width);
+ void GetGlyphWidthForHarfBuzz(unsigned count,
+- hb_codepoint_t* first_glyph,
++ const hb_codepoint_t* first_glyph,
+ unsigned glyph_stride,
+ hb_position_t* first_advance,
+ unsigned advance_stride);
+--
+2.19.1
+