[HarfBuzz] harfbuzz: Branch 'master' - 13 commits

Behdad Esfahbod behdad at kemper.freedesktop.org
Wed Mar 7 09:50:03 UTC 2018


 .ci/run-coveralls.sh            |    2 +
 .ci/trigger-coverity.sh         |    6 +---
 .travis.yml                     |    5 +--
 src/Makefile.sources            |    2 -
 src/dev-run.sh                  |   22 ++++++++++++--
 src/hb-aat-layout-kerx-table.hh |    1 
 src/hb-ot-color-cbdt-table.hh   |    6 ++--
 src/hb-ot-color-colr-table.hh   |   37 ++++++++++++++-----------
 src/hb-ot-color-cpal-table.hh   |   59 +++++++++++++---------------------------
 src/hb-ot-color.h               |   12 +-------
 src/hb-ot-font.cc               |    3 +-
 src/hb-ot-glyf-table.hh         |    1 
 src/hb-set-private.hh           |   39 ++++++++++++++++++++------
 src/test-unicode-ranges.cc      |    2 -
 test/api/test-set.c             |   10 ++++++
 15 files changed, 115 insertions(+), 92 deletions(-)

New commits:
commit f014a124f582215fa96afc28b534a1ca0bf17167
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Mar 7 10:49:26 2018 +0100

    [set] Fix algebra
    
    Was totally b0rked. Ouch!
    
    Fixes https://github.com/harfbuzz/harfbuzz/issues/863

diff --git a/src/hb-set-private.hh b/src/hb-set-private.hh
index 09ca010d..3615c50e 100644
--- a/src/hb-set-private.hh
+++ b/src/hb-set-private.hh
@@ -389,6 +389,7 @@ struct hb_set_t
 
     unsigned int na = pages.len;
     unsigned int nb = other->pages.len;
+    unsigned int next_page = na;
 
     unsigned int count = 0;
     unsigned int a = 0, b = 0;
@@ -431,6 +432,7 @@ struct hb_set_t
 	a--;
 	b--;
 	count--;
+	page_map[count] = page_map[a];
 	Op::process (page_at (count).v, page_at (a).v, other->page_at (b).v);
       }
       else if (page_map[a - 1].major > other->page_map[b - 1].major)
@@ -439,7 +441,7 @@ struct hb_set_t
 	if (Op::passthru_left)
 	{
 	  count--;
-	  page_at (count).v = page_at (a).v;
+	  page_map[count] = page_map[a];
 	}
       }
       else
@@ -448,16 +450,28 @@ struct hb_set_t
 	if (Op::passthru_right)
 	{
 	  count--;
+	  page_map[count].major = other->page_map[b].major;
+	  page_map[count].index = next_page++;
 	  page_at (count).v = other->page_at (b).v;
 	}
       }
     }
     if (Op::passthru_left)
       while (a)
-	page_at (--count).v = page_at (--a).v;
+      {
+	a--;
+	count--;
+	page_map[count] = page_map [a];
+      }
     if (Op::passthru_right)
       while (b)
-	page_at (--count).v = other->page_at (--b).v;
+      {
+	b--;
+	count--;
+	page_map[count].major = other->page_map[b].major;
+	page_map[count].index = next_page++;
+	page_at (count).v = other->page_at (b).v;
+      }
     assert (!count);
   }
 
commit 7587683cdce8ee9b7f07bae82aa1bb163e79ab92
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Mar 7 09:55:22 2018 +0100

    [set] Minor
    
    In preparation to fix https://github.com/harfbuzz/harfbuzz/issues/863
    
    Binary operations are sets are completely broken. Ouch.

diff --git a/src/hb-set-private.hh b/src/hb-set-private.hh
index 49cd7912..09ca010d 100644
--- a/src/hb-set-private.hh
+++ b/src/hb-set-private.hh
@@ -430,19 +430,26 @@ struct hb_set_t
       {
 	a--;
 	b--;
-        Op::process (page_at (--count).v, page_at (a).v, other->page_at (b).v);
+	count--;
+	Op::process (page_at (count).v, page_at (a).v, other->page_at (b).v);
       }
       else if (page_map[a - 1].major > other->page_map[b - 1].major)
       {
-        a--;
-        if (Op::passthru_left)
-	  page_at (--count).v = page_at (a).v;
+	a--;
+	if (Op::passthru_left)
+	{
+	  count--;
+	  page_at (count).v = page_at (a).v;
+	}
       }
       else
       {
-        b--;
-        if (Op::passthru_right)
-	  page_at (--count).v = other->page_at (b).v;
+	b--;
+	if (Op::passthru_right)
+	{
+	  count--;
+	  page_at (count).v = other->page_at (b).v;
+	}
       }
     }
     if (Op::passthru_left)
commit e4cbb87bd3512c3a6e97ea3923ecd1b26b0a1251
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Mar 7 09:37:22 2018 +0100

    Minor

diff --git a/src/hb-ot-color-colr-table.hh b/src/hb-ot-color-colr-table.hh
index 15bfafbb..2c3b1ccc 100644
--- a/src/hb-ot-color-colr-table.hh
+++ b/src/hb-ot-color-colr-table.hh
@@ -93,7 +93,7 @@ struct COLR
     return_trace (true);
   }
 
-  inline const bool get_base_glyph_record (
+  inline bool get_base_glyph_record (
     hb_codepoint_t glyph_id, unsigned int &first_layer, unsigned int &num_layers) const
   {
     const BaseGlyphRecord* base_glyph_records = &baseGlyphRecordsZ (this);
commit c6150333c29b458ed34858f24e94acc0f771aa0b
Author: Behdad Esfahbod <behdad at behdad.org>
Date:   Wed Mar 7 09:27:16 2018 +0100

    Sign

diff --git a/src/test-unicode-ranges.cc b/src/test-unicode-ranges.cc
index 16d01ef2..dbc5fa42 100644
--- a/src/test-unicode-ranges.cc
+++ b/src/test-unicode-ranges.cc
@@ -29,7 +29,7 @@
 #include "hb-ot-os2-unicode-ranges.hh"
 
 void
-test (hb_codepoint_t cp, int bit)
+test (hb_codepoint_t cp, unsigned int bit)
 {
   if (OT::hb_get_unicode_range_bit (cp) != bit)
   {
commit 9a6f9b4d4284f0378a71a181fe216d97c913669e
Author: Garret Rieger <grieger at google.com>
Date:   Tue Mar 6 13:46:51 2018 -0800

    [set] add a test demonstrating a bug in hb_set_union.

diff --git a/test/api/test-set.c b/test/api/test-set.c
index 1c51e846..15958c57 100644
--- a/test/api/test-set.c
+++ b/test/api/test-set.c
@@ -137,10 +137,13 @@ test_set_algebra (void)
 {
   hb_set_t *s = hb_set_create ();
   hb_set_t *o = hb_set_create ();
+  hb_set_t *o2 = hb_set_create ();
 
   hb_set_add (o, 13);
   hb_set_add (o, 19);
 
+  hb_set_add (o2, 0x660E);
+
   test_empty (s);
   g_assert (!hb_set_is_equal (s, o));
   hb_set_set (s, o);
@@ -159,6 +162,13 @@ test_set_algebra (void)
 
   hb_set_clear (s);
   test_empty (s);
+  g_assert_cmpint (hb_set_get_population (s), ==, 0);
+  hb_set_union (s, o2);
+  g_assert_cmpint (hb_set_get_population (s), ==, 1);
+  g_assert (hb_set_has (s, 0x660E));
+
+  hb_set_clear (s);
+  test_empty (s);
   hb_set_add_range (s, 10, 17);
   g_assert (!hb_set_is_equal (s, o));
   hb_set_intersect (s, o);
commit 9b4a5d7ef1ec068042e3c793845a4dbc3308d4b7
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Wed Mar 7 00:23:40 2018 +0330

    [ci] Enable -Werror=unused (#862)

diff --git a/.travis.yml b/.travis.yml
index 0d719641..69b09c18 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,8 +6,8 @@ language: cpp
 env:
   global:
     - CPPFLAGS=""
-    - CFLAGS="-Werror -Werror=unused-function"
-    - CXXFLAGS="-Werror -Werror=unused-function -Wno-deprecated-register" # glib uses register and clang raises a warning
+    - CFLAGS="-Werror -Werror=unused -Werror=unused-function"
+    - CXXFLAGS="-Werror -Werror=unused -Werror=unused-function -Wno-deprecated-register" # glib uses register and clang raises a warning
     - CONFIGURE_OPTS="--with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2"
     - NOCONFIGURE=1
     # COVERITY_SCAN_TOKEN
diff --git a/src/hb-ot-glyf-table.hh b/src/hb-ot-glyf-table.hh
index e4d3ec85..d62f24bd 100644
--- a/src/hb-ot-glyf-table.hh
+++ b/src/hb-ot-glyf-table.hh
@@ -299,7 +299,6 @@ struct glyf
         return true;
       else if (num_contours > 0)
       {
-        unsigned int glyph_len = *end_offset - start_offset;
         /* simple glyph w/contours, possibly trimmable */
         glyph += GlyphHeader::static_size + 2 * num_contours;
 
commit 54cbe6702c1e4c934c60512367abaf801294c1bb
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Tue Mar 6 16:41:08 2018 +0330

    [ot-color] Further improvements on COLR/CPAL implementation (#859)
    
    * Implemented a bsearch on get_base_glyph_record
    * Made get_color_record_argb actually work

diff --git a/src/hb-ot-color-colr-table.hh b/src/hb-ot-color-colr-table.hh
index f9d65aa8..15bfafbb 100644
--- a/src/hb-ot-color-colr-table.hh
+++ b/src/hb-ot-color-colr-table.hh
@@ -80,41 +80,46 @@ struct COLR
   {
     TRACE_SANITIZE (this);
     if (!(c->check_struct (this) &&
-        c->check_array ((const void*) &layerRecordsOffset, sizeof (LayerRecord), numLayerRecords) &&
-        c->check_array ((const void*) &baseGlyphRecords, sizeof (BaseGlyphRecord), numBaseGlyphRecords)))
+        c->check_array ((const void*) &layerRecordsOffsetZ, sizeof (LayerRecord), numLayerRecords) &&
+        c->check_array ((const void*) &baseGlyphRecordsZ, sizeof (BaseGlyphRecord), numBaseGlyphRecords)))
       return_trace (false);
 
-    const BaseGlyphRecord* base_glyph_records = &baseGlyphRecords (this);
+    const BaseGlyphRecord* base_glyph_records = &baseGlyphRecordsZ (this);
     for (unsigned int i = 0; i < numBaseGlyphRecords; ++i)
       if (base_glyph_records[i].firstLayerIndex +
           base_glyph_records[i].numLayers > numLayerRecords)
         return_trace (false);
 
-    /* XXX values of LayerRecord structs should be sanitized */
-
     return_trace (true);
   }
 
   inline const bool get_base_glyph_record (
     hb_codepoint_t glyph_id, unsigned int &first_layer, unsigned int &num_layers) const
   {
-    /* TODO replace with bsearch */
-    const BaseGlyphRecord* base_glyph_records = &baseGlyphRecords (this);
-    unsigned int records = numBaseGlyphRecords;
-    for (unsigned int i = 0; i < records; ++i)
-      if (base_glyph_records[i].gID == glyph_id)
+    const BaseGlyphRecord* base_glyph_records = &baseGlyphRecordsZ (this);
+    unsigned int min = 0, max = numBaseGlyphRecords - 1;
+    while (min <= max)
+    {
+      unsigned int mid = (min + max) / 2;
+      hb_codepoint_t gID = base_glyph_records[mid].gID;
+      if (gID > glyph_id)
+        max = mid - 1;
+      else if (gID < glyph_id)
+        min = mid + 1;
+      else
       {
-        first_layer = base_glyph_records[i].firstLayerIndex;
-        num_layers = base_glyph_records[i].numLayers;
+        first_layer = base_glyph_records[mid].firstLayerIndex;
+        num_layers = base_glyph_records[mid].numLayers;
         return true;
       }
+    }
     return false;
   }
 
   inline void get_layer_record (int layer,
     hb_codepoint_t &glyph_id, unsigned int &palette_index) const
   {
-    const LayerRecord* records = &layerRecordsOffset (this);
+    const LayerRecord* records = &layerRecordsOffsetZ (this);
     glyph_id = records[layer].gID;
     palette_index = records[layer].paletteIndex;
   }
@@ -123,9 +128,9 @@ struct COLR
   HBUINT16	version;		/* Table version number */
   HBUINT16	numBaseGlyphRecords;	/* Number of Base Glyph Records */
   LOffsetTo<BaseGlyphRecord>
-		baseGlyphRecords;	/* Offset to Base Glyph records. */
+		baseGlyphRecordsZ;	/* Offset to Base Glyph records. */
   LOffsetTo<LayerRecord>
-		layerRecordsOffset;	/* Offset to Layer Records */
+		layerRecordsOffsetZ;	/* Offset to Layer Records */
   HBUINT16	numLayerRecords;	/* Number of Layer Records */
   public:
   DEFINE_SIZE_STATIC (14);
diff --git a/src/hb-ot-color-cpal-table.hh b/src/hb-ot-color-cpal-table.hh
index 135862d4..d2741879 100644
--- a/src/hb-ot-color-cpal-table.hh
+++ b/src/hb-ot-color-cpal-table.hh
@@ -40,25 +40,6 @@
 namespace OT {
 
 
-struct ColorRecord
-{
-  friend struct CPAL;
-
-  inline bool sanitize (hb_sanitize_context_t *c) const
-  {
-    TRACE_SANITIZE (this);
-    return_trace (true);
-  }
-
-  protected:
-  HBUINT8 blue;
-  HBUINT8 green;
-  HBUINT8 red;
-  HBUINT8 alpha;
-  public:
-  DEFINE_SIZE_STATIC (4);
-};
-
 struct CPALV1Tail
 {
   friend struct CPAL;
@@ -96,6 +77,8 @@ struct CPALV1Tail
   DEFINE_SIZE_STATIC (12);
 };
 
+typedef HBUINT32 BGRAColor;
+
 struct CPAL
 {
   static const hb_tag_t tableTag = HB_OT_TAG_CPAL;
@@ -103,16 +86,13 @@ struct CPAL
   inline bool sanitize (hb_sanitize_context_t *c) const
   {
     TRACE_SANITIZE (this);
-    if (!(c->check_struct (this) &&
-		    colorRecords.sanitize (c)))
-      return_trace (false);
-
-    unsigned int palettes = numPalettes;
-    if (!c->check_array (colorRecordIndices, sizeof (HBUINT16), palettes))
+    if (!(c->check_struct (this) && // This checks colorRecordIndicesX sanity also, see #get_size
+        c->check_array ((const void*) &colorRecordsZ, sizeof (BGRAColor), numColorRecords)))
       return_trace (false);
 
-    for (unsigned int i = 0; i < palettes; ++i)
-      if (colorRecordIndices[i] + numPaletteEntries > colorRecords.get_size ())
+    // Check for indices sanity so no need for doing it runtime
+    for (unsigned int i = 0; i < numPalettes; ++i)
+      if (colorRecordIndicesX[i] + numPaletteEntries > numColorRecords)
         return_trace (false);
 
     // If version is zero, we are done here; otherwise we need to check tail also
@@ -120,12 +100,12 @@ struct CPAL
       return_trace (true);
 
     const CPALV1Tail &v1 = StructAfter<CPALV1Tail> (*this);
-    return_trace (v1.sanitize (c, palettes));
+    return_trace (v1.sanitize (c, numPalettes));
   }
 
   inline unsigned int get_size (void) const
   {
-    return min_size + numPalettes * 2;
+    return min_size + numPalettes * sizeof (HBUINT16);
   }
 
   inline hb_ot_color_palette_flags_t get_palette_flags (unsigned int palette) const
@@ -151,14 +131,14 @@ struct CPAL
     return numPalettes;
   }
 
-  inline void get_color_record (int palette_index, uint8_t &r, uint8_t &g,
-                                              uint8_t &b, uint8_t &a) const
+  inline hb_ot_color_t get_color_record_argb (unsigned int color_index, unsigned int palette) const
   {
-    // We should check if palette_index is in range as it is not done on COLR sanitization
-    r = colorRecords[palette_index].red;
-    g = colorRecords[palette_index].green;
-    b = colorRecords[palette_index].blue;
-    a = colorRecords[palette_index].alpha;
+    if (color_index >= numPaletteEntries || palette >= numPalettes)
+      return 0;
+
+    const BGRAColor* records = &colorRecordsZ(this);
+    // No need for more range check as it is already done on #sanitize
+    return records[colorRecordIndicesX[palette] + color_index];
   }
 
   protected:
@@ -166,11 +146,12 @@ struct CPAL
   /* Version 0 */
   HBUINT16	numPaletteEntries;
   HBUINT16	numPalettes;
-  ArrayOf<ColorRecord>	colorRecords;
-  HBUINT16	colorRecordIndices[VAR];  // VAR=numPalettes
+  HBUINT16	numColorRecords;
+  LOffsetTo<HBUINT32>	colorRecordsZ;
+  HBUINT16	colorRecordIndicesX[VAR];  // VAR=numPalettes
 /*CPALV1Tail	v1[VAR];*/
   public:
-  DEFINE_SIZE_ARRAY (12, colorRecordIndices);
+  DEFINE_SIZE_ARRAY (12, colorRecordIndicesX);
 };
 
 } /* namespace OT */
diff --git a/src/hb-ot-color.h b/src/hb-ot-color.h
index 8c276e59..44b3406e 100644
--- a/src/hb-ot-color.h
+++ b/src/hb-ot-color.h
@@ -39,19 +39,11 @@ HB_BEGIN_DECLS
 
 /**
  * hb_ot_color_t:
- * @red: the intensity of the red channel
- * @green: the intensity of the green channel
- * @blue: the intensity of the blue channel
- * @alpha: the transparency
- *
- * Structure for holding color values.
+ * ARGB data type for holding color values.
  *
  * Since: REPLACEME
  */
-typedef struct
-{
-  uint8_t red, green, blue, alpha;
-} hb_ot_color_t;
+typedef uint32_t hb_ot_color_t;
 
 
 /**
commit 18d14b8e0d5d28106800ebf835ff3155a4f4de7c
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Mon Mar 5 14:25:11 2018 +0330

    [dev-run] an option to open using a GUI app

diff --git a/src/dev-run.sh b/src/dev-run.sh
index 9c82db0b..e3d5bccc 100755
--- a/src/dev-run.sh
+++ b/src/dev-run.sh
@@ -9,7 +9,10 @@
 #  $ cmake -DHB_CHECK=ON -Bbuild -H. -GNinja && ninja -Cbuild
 #  $ src/dev-run.sh [FONT-FILE] [TEXT]
 #
-# If you are using iTerm2, issue the script like this:
+# If you want to open the result rendering using a GUI app,
+#  $ src/dev-run.sh open [FONT-FILE] [TEXT]
+#
+# And if you are using iTerm2, you can use the script like this,
 #  $ src/dev-run.sh img [FONT-FILE] [TEXT]
 #
 
@@ -22,6 +25,11 @@ GDB=gdb
 command -v $GDB >/dev/null 2>&1 || export GDB="lldb"
 
 
+[ $1 = "open" ] && openimg=1 && shift
+OPEN=xdg-open
+[ "$(uname)" == "Darwin" ] && OPEN=open
+
+
 [ $1 = "img" ] && img=1 && shift
 # http://iterm2.com/documentation-images.html
 osc="\033]"
@@ -30,7 +38,7 @@ st="\a"
 if [[ $TERM == screen* ]]; then st="\a"; fi
 
 
-tmp=$(mktemp)
+tmp=tmp.png
 [ -f 'build/build.ninja' ] && CMAKENINJA=TRUE
 # or "fswatch -0 . -e build/ -e .git"
 find src/ | entr printf '\0' | while read -d ""; do
@@ -39,7 +47,10 @@ find src/ | entr printf '\0' | while read -d ""; do
 	if [[ $CMAKENINJA ]]; then
 		ninja -Cbuild hb-shape hb-view && {
 			build/hb-shape $@
-			if [ $img ]; then
+			if [ $openimg ]; then
+				build/hb-view $@ -O png -o $tmp
+				$OPEN $tmp
+			elif [ $img ]; then
 				build/hb-view $@ -O png -o $tmp
 				printf "\n${osc}1337;File=;inline=1:`cat $tmp | base64`${st}\n"
 			else
@@ -49,7 +60,10 @@ find src/ | entr printf '\0' | while read -d ""; do
 	else
 		make -Cbuild/src -j5 -s lib && {
 			build/util/hb-shape $@
-			if [ $img ]; then
+			if [ $openimg ]; then
+				build/util/hb-view $@ -O png -o $tmp
+				$OPEN $tmp
+			elif [ $img ]; then
 				build/util/hb-view $@ -O png -o $tmp
 				printf "\n${osc}1337;File=;inline=1:`cat $tmp | base64`${st}\n"
 			else
commit 1db83954948dfae3f75f61c535c5de1b3a843a69
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Mon Mar 5 13:02:50 2018 +0330

    [ci] minor, bring back the removed assertion

diff --git a/.ci/run-coveralls.sh b/.ci/run-coveralls.sh
index 59b4c56d..8d1ceb5e 100755
--- a/.ci/run-coveralls.sh
+++ b/.ci/run-coveralls.sh
@@ -3,6 +3,8 @@
 set -x
 set -o errexit -o nounset
 
+if test x"$TRAVIS_REPO_SLUG" != x"harfbuzz/harfbuzz"; then exit; fi
+
 pip install --user nose
 pip install --user cpp-coveralls
 export PATH=$HOME/.local/bin:$PATH
commit 5895fe3d4d0441dacf8989740cf4150193397796
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Mon Mar 5 12:58:34 2018 +0330

    [ci] minor

diff --git a/.ci/trigger-coverity.sh b/.ci/trigger-coverity.sh
index e2416922..19852bd1 100644
--- a/.ci/trigger-coverity.sh
+++ b/.ci/trigger-coverity.sh
@@ -3,10 +3,8 @@
 set -x
 set -o errexit -o nounset
 
-if test "x$TRAVIS_EVENT_TYPE" != x"cron"; then exit; fi
-
-BRANCH="$TRAVIS_BRANCH"
-if test "x$BRANCH" != xmaster; then exit; fi
+if test x"$TRAVIS_EVENT_TYPE" != x"cron"; then exit; fi
+if test x"$TRAVIS_BRANCH" != x"master"; then exit; fi
 
 git fetch --unshallow
 git remote add upstream "https://$GH_TOKEN@github.com/harfbuzz/harfbuzz.git"
commit a3e29fd38f01b26b6306f9f7142a54cc7d6c6080
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Sun Mar 4 02:56:27 2018 +0330

    [aat/kerx] Add a TODO

diff --git a/src/hb-aat-layout-kerx-table.hh b/src/hb-aat-layout-kerx-table.hh
index 2414ecbf..ce7ca105 100644
--- a/src/hb-aat-layout-kerx-table.hh
+++ b/src/hb-aat-layout-kerx-table.hh
@@ -299,6 +299,7 @@ struct kerx
     if (!(c->check_struct (this)))
      return_trace (false);
 
+    /* TODO: Something like `morx`s ChainSubtable should be done here instead */
     const KerxTable *table = &StructAfter<KerxTable> (*this);
     if (!(table->sanitize (c)))
       return_trace (false);
commit 0ef6ab25ab4456e387711ae246900486ad738d26
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Sun Mar 4 02:47:26 2018 +0330

    [ot-color] Move cbdt to the namespace (#860)

diff --git a/src/Makefile.sources b/src/Makefile.sources
index cb4a63c0..5428c6b1 100644
--- a/src/Makefile.sources
+++ b/src/Makefile.sources
@@ -17,7 +17,7 @@ HB_BASE_sources = \
 	hb-object-private.hh \
 	hb-open-file-private.hh \
 	hb-open-type-private.hh \
-	hb-ot-cbdt-table.hh \
+	hb-ot-color-cbdt-table.hh \
 	hb-ot-cmap-table.hh \
 	hb-ot-glyf-table.hh \
 	hb-ot-hdmx-table.hh \
diff --git a/src/hb-ot-cbdt-table.hh b/src/hb-ot-color-cbdt-table.hh
similarity index 99%
rename from src/hb-ot-cbdt-table.hh
rename to src/hb-ot-color-cbdt-table.hh
index e4519529..e7ab917e 100644
--- a/src/hb-ot-cbdt-table.hh
+++ b/src/hb-ot-color-cbdt-table.hh
@@ -24,8 +24,8 @@
  * Google Author(s): Seigo Nonaka
  */
 
-#ifndef HB_OT_CBDT_TABLE_HH
-#define HB_OT_CBDT_TABLE_HH
+#ifndef HB_OT_COLOR_CBDT_TABLE_HH
+#define HB_OT_COLOR_CBDT_TABLE_HH
 
 #include "hb-open-type-private.hh"
 
@@ -468,4 +468,4 @@ struct CBDT
 
 } /* namespace OT */
 
-#endif /* HB_OT_CBDT_TABLE_HH */
+#endif /* HB_OT_COLOR_CBDT_TABLE_HH */
diff --git a/src/hb-ot-font.cc b/src/hb-ot-font.cc
index 9864064b..0e373d30 100644
--- a/src/hb-ot-font.cc
+++ b/src/hb-ot-font.cc
@@ -31,12 +31,13 @@
 #include "hb-font-private.hh"
 
 #include "hb-ot-cmap-table.hh"
-#include "hb-ot-cbdt-table.hh"
 #include "hb-ot-glyf-table.hh"
 #include "hb-ot-hmtx-table.hh"
 #include "hb-ot-kern-table.hh"
 #include "hb-ot-post-table.hh"
 
+#include "hb-ot-color-cbdt-table.hh"
+
 
 struct hb_ot_font_t
 {
commit 6659cb56fae0c900ae88e95bedcb3b76234c8838
Author: Ebrahim Byagowi <ebrahim at gnu.org>
Date:   Sun Mar 4 02:31:53 2018 +0330

    [ci] Remove --coverage as use of --enable-code-coverage

diff --git a/.travis.yml b/.travis.yml
index 9ab686c4..0d719641 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -6,9 +6,8 @@ language: cpp
 env:
   global:
     - CPPFLAGS=""
-    - CFLAGS="-Werror -Werror=unused-function --coverage"
-    - CXXFLAGS="-Werror -Werror=unused-function -Wno-deprecated-register --coverage" # glib uses register and clang raises a warning
-    - LDFLAGS="--coverage"
+    - CFLAGS="-Werror -Werror=unused-function"
+    - CXXFLAGS="-Werror -Werror=unused-function -Wno-deprecated-register" # glib uses register and clang raises a warning
     - CONFIGURE_OPTS="--with-freetype --with-glib --with-gobject --with-cairo --with-icu --with-graphite2"
     - NOCONFIGURE=1
     # COVERITY_SCAN_TOKEN


More information about the HarfBuzz mailing list