NEWS | 15 +++++++++++++++ configure.ac | 2 +- src/Makefile.am | 1 + src/hb-buffer.cc | 4 ++++ src/hb-common.cc | 2 +- src/hb-fallback-shape.cc | 2 +- src/hb-font-private.hh | 2 +- src/hb-glib.cc | 2 ++ src/hb-ot-font.cc | 2 ++ src/hb-ot-layout.cc | 8 +++++++- src/hb-ot-map.cc | 2 +- src/hb-ot-shape-complex-hangul.cc | 2 +- src/hb-ot-shape-complex-hebrew.cc | 2 +- src/hb-ot-shape-complex-indic.cc | 4 ++-- src/hb-ot-shape-normalize.cc | 6 +++--- src/hb-ot-shape.cc | 6 +++++- 16 files changed, 48 insertions(+), 14 deletions(-)
New commits: commit d44d52bd0da033865641dfd39d94852119fd4fd7 Author: Behdad Esfahbod <beh...@behdad.org> Date: Thu Nov 26 19:35:43 2015 -0500 1.1.2 diff --git a/NEWS b/NEWS index 9cfda32..3e8b100 100644 --- a/NEWS +++ b/NEWS @@ -1,3 +1,18 @@ +Overview of changes leading to 1.1.2 +Wednesday, November 26, 2015 +==================================== + +- Fix badly-broken fallback shaper that affected terminology. + https://github.com/behdad/harfbuzz/issues/187 +- Fix y_scaling in Graphite shaper. +- API changes: + * An unset glyph_h_origin() function in font-funcs now (sensibly) + implies horizontal origin at 0,0. Ie, the nil callback returns + true instead of false. As such, implementations that have a + glyph_h_origin() that simply returns true, can remove that function + with HarfBuzz >= 1.1.2. This results in a tiny speedup. + + Overview of changes leading to 1.1.1 Wednesday, November 24, 2015 ==================================== diff --git a/configure.ac b/configure.ac index 62b1567..044a1d6 100644 --- a/configure.ac +++ b/configure.ac @@ -1,6 +1,6 @@ AC_PREREQ([2.64]) AC_INIT([HarfBuzz], - [1.1.1], + [1.1.2], [http://bugs.freedesktop.org/enter_bug.cgi?product=harfbuzz], [harfbuzz], [http://harfbuzz.org/]) commit 35d18585fc57750d817f57bfffe569069f9803b5 Author: Behdad Esfahbod <beh...@behdad.org> Date: Thu Nov 26 19:30:37 2015 -0500 Fix a few docs blocks diff --git a/src/hb-buffer.cc b/src/hb-buffer.cc index 5c71734..c271086 100644 --- a/src/hb-buffer.cc +++ b/src/hb-buffer.cc @@ -37,6 +37,8 @@ /** + * hb_segment_properties_equal: + * * Since: 0.9.7 **/ hb_bool_t @@ -52,6 +54,8 @@ hb_segment_properties_equal (const hb_segment_properties_t *a, } /** + * hb_segment_properties_hash: + * * Since: 0.9.7 **/ unsigned int diff --git a/src/hb-glib.cc b/src/hb-glib.cc index 7dbd83d..e203524 100644 --- a/src/hb-glib.cc +++ b/src/hb-glib.cc @@ -383,6 +383,8 @@ hb_glib_get_unicode_funcs (void) } /** + * hb_glib_blob_create: + * * Since: 0.9.38 **/ hb_blob_t * diff --git a/src/hb-ot-font.cc b/src/hb-ot-font.cc index 8d33300..58586bf 100644 --- a/src/hb-ot-font.cc +++ b/src/hb-ot-font.cc @@ -370,6 +370,8 @@ retry: /** + * hb_ot_font_set_funcs: + * * Since: 0.9.28 **/ void diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc index 3d4ee16..b0257f6 100644 --- a/src/hb-ot-layout.cc +++ b/src/hb-ot-layout.cc @@ -130,6 +130,8 @@ hb_ot_layout_has_glyph_classes (hb_face_t *face) } /** + * hb_ot_layout_get_glyph_class: + * * Since: 0.9.7 **/ hb_ot_layout_glyph_class_t @@ -140,6 +142,8 @@ hb_ot_layout_get_glyph_class (hb_face_t *face, } /** + * hb_ot_layout_get_glyphs_in_class: + * * Since: 0.9.7 **/ void @@ -365,6 +369,8 @@ hb_ot_layout_language_get_required_feature_index (hb_face_t *face, } /** + * hb_ot_layout_language_get_required_feature: + * * Since: 0.9.30 **/ hb_bool_t diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc index 7a93c62..1d9783e 100644 --- a/src/hb-ot-shape.cc +++ b/src/hb-ot-shape.cc @@ -855,6 +855,8 @@ _hb_ot_shape (hb_shape_plan_t *shape_plan, /** + * hb_ot_shape_plan_collect_lookups: + * * Since: 0.9.7 **/ void @@ -888,6 +890,8 @@ add_char (hb_font_t *font, /** + * hb_ot_shape_glyphs_closure: + * * Since: 0.9.2 **/ void commit 0e38c918b66df31978d8fd3d8271a9b781384545 Author: Behdad Esfahbod <beh...@behdad.org> Date: Thu Nov 26 19:26:26 2015 -0500 [introspection] Make scanner happy with HB_EXTERN diff --git a/src/Makefile.am b/src/Makefile.am index fe14287..ec55656 100644 --- a/src/Makefile.am +++ b/src/Makefile.am @@ -419,6 +419,7 @@ HarfBuzz_0_0_gir_CFLAGS = \ -DHB_OT_H_IN \ -DHB_GOBJECT_H \ -DHB_GOBJECT_H_IN \ + -DHB_EXTERN= \ $(NULL) HarfBuzz_0_0_gir_LIBS = \ libharfbuzz.la \ commit ea512f71084296be3bd893f78650def894066de0 Author: Behdad Esfahbod <beh...@behdad.org> Date: Thu Nov 26 19:22:22 2015 -0500 Use C-style casts instead of compare to 0, to convert hb_bool_t to bool diff --git a/src/hb-common.cc b/src/hb-common.cc index 176da8d..710b36e 100644 --- a/src/hb-common.cc +++ b/src/hb-common.cc @@ -521,7 +521,7 @@ hb_user_data_array_t::set (hb_user_data_key_t *key, } } hb_user_data_item_t item = {key, data, destroy}; - bool ret = !!items.replace_or_insert (item, lock, replace != 0); + bool ret = !!items.replace_or_insert (item, lock, (bool) replace); return ret; } diff --git a/src/hb-fallback-shape.cc b/src/hb-fallback-shape.cc index 0cd623e..b5ebfc0 100644 --- a/src/hb-fallback-shape.cc +++ b/src/hb-fallback-shape.cc @@ -106,7 +106,7 @@ _hb_fallback_shape (hb_shape_plan_t *shape_plan HB_UNUSED, */ hb_codepoint_t space; - bool has_space = font->get_glyph (' ', 0, &space) != 0; + bool has_space = (bool) font->get_glyph (' ', 0, &space); buffer->clear_positions (); diff --git a/src/hb-font-private.hh b/src/hb-font-private.hh index c45258b..7255cb9 100644 --- a/src/hb-font-private.hh +++ b/src/hb-font-private.hh @@ -160,7 +160,7 @@ struct hb_font_t { HB_FONT_FUNCS_IMPLEMENT_CALLBACKS #undef HB_FONT_FUNC_IMPLEMENT - inline hb_bool_t has_glyph (hb_codepoint_t unicode) + inline bool has_glyph (hb_codepoint_t unicode) { hb_codepoint_t glyph; return get_glyph (unicode, 0, &glyph); diff --git a/src/hb-ot-layout.cc b/src/hb-ot-layout.cc index fbc5d51..3d4ee16 100644 --- a/src/hb-ot-layout.cc +++ b/src/hb-ot-layout.cc @@ -742,7 +742,7 @@ hb_ot_layout_lookup_would_substitute_fast (hb_face_t *face, hb_bool_t zero_context) { if (unlikely (lookup_index >= hb_ot_layout_from_face (face)->gsub_lookup_count)) return false; - OT::hb_would_apply_context_t c (face, glyphs, glyphs_length, zero_context != 0); + OT::hb_would_apply_context_t c (face, glyphs, glyphs_length, (bool) zero_context); const OT::SubstLookup& l = hb_ot_layout_from_face (face)->gsub->get_lookup (lookup_index); diff --git a/src/hb-ot-map.cc b/src/hb-ot-map.cc index 1b8a3ac..7bdeddb 100644 --- a/src/hb-ot-map.cc +++ b/src/hb-ot-map.cc @@ -89,7 +89,7 @@ hb_ot_map_builder_t::hb_ot_map_builder_t (hb_face_t *face_, for (unsigned int table_index = 0; table_index < 2; table_index++) { hb_tag_t table_tag = table_tags[table_index]; - found_script[table_index] = hb_ot_layout_table_choose_script (face, table_tag, script_tags, &script_index[table_index], &chosen_script[table_index]) != 0; + found_script[table_index] = (bool) hb_ot_layout_table_choose_script (face, table_tag, script_tags, &script_index[table_index], &chosen_script[table_index]); hb_ot_layout_script_find_language (face, table_tag, script_index[table_index], language_tag, &language_index[table_index]); } } diff --git a/src/hb-ot-shape-complex-hangul.cc b/src/hb-ot-shape-complex-hangul.cc index 52080a1..5f4d98b 100644 --- a/src/hb-ot-shape-complex-hangul.cc +++ b/src/hb-ot-shape-complex-hangul.cc @@ -301,7 +301,7 @@ preprocess_text_hangul (const hb_ot_shape_plan_t *plan, { /* Have <LV>, <LVT>, or <LV,T> */ hb_codepoint_t s = u; - bool has_glyph = font->has_glyph (s) != 0; + bool has_glyph = font->has_glyph (s); unsigned int lindex = (s - SBase) / NCount; unsigned int nindex = (s - SBase) % NCount; unsigned int vindex = nindex / TCount; diff --git a/src/hb-ot-shape-complex-hebrew.cc b/src/hb-ot-shape-complex-hebrew.cc index 2e29bdd..3215900 100644 --- a/src/hb-ot-shape-complex-hebrew.cc +++ b/src/hb-ot-shape-complex-hebrew.cc @@ -68,7 +68,7 @@ compose_hebrew (const hb_ot_shape_normalize_context_t *c, 0xFB4Au /* TAV */ }; - bool found = c->unicode->compose (a, b, ab) != 0; + bool found = (bool) c->unicode->compose (a, b, ab); if (!found && !c->plan->has_mark) { diff --git a/src/hb-ot-shape-complex-indic.cc b/src/hb-ot-shape-complex-indic.cc index 72b621e..5354897 100644 --- a/src/hb-ot-shape-complex-indic.cc +++ b/src/hb-ot-shape-complex-indic.cc @@ -1806,7 +1806,7 @@ decompose_indic (const hb_ot_shape_normalize_context_t *c, } } - return c->unicode->decompose (ab, a, b) != 0; + return (bool) c->unicode->decompose (ab, a, b); } static bool @@ -1822,7 +1822,7 @@ compose_indic (const hb_ot_shape_normalize_context_t *c, /* Composition-exclusion exceptions that we want to recompose. */ if (a == 0x09AFu && b == 0x09BCu) { *ab = 0x09DFu; return true; } - return c->unicode->compose (a, b, ab) != 0; + return (bool) c->unicode->compose (a, b, ab); } diff --git a/src/hb-ot-shape-normalize.cc b/src/hb-ot-shape-normalize.cc index f6a655d..3f00b8e 100644 --- a/src/hb-ot-shape-normalize.cc +++ b/src/hb-ot-shape-normalize.cc @@ -76,7 +76,7 @@ decompose_unicode (const hb_ot_shape_normalize_context_t *c, hb_codepoint_t *a, hb_codepoint_t *b) { - return c->unicode->decompose (ab, a, b) != 0; + return (bool) c->unicode->decompose (ab, a, b); } static bool @@ -85,7 +85,7 @@ compose_unicode (const hb_ot_shape_normalize_context_t *c, hb_codepoint_t b, hb_codepoint_t *ab) { - return c->unicode->compose (a, b, ab) != 0; + return (bool) c->unicode->compose (a, b, ab); } static inline void @@ -127,7 +127,7 @@ decompose (const hb_ot_shape_normalize_context_t *c, bool shortest, hb_codepoint (b && !font->get_glyph (b, 0, &b_glyph))) return 0; - bool has_a = font->get_glyph (a, 0, &a_glyph) != 0; + bool has_a = (bool) font->get_glyph (a, 0, &a_glyph); if (shortest && has_a) { /* Output a and b */ output_char (buffer, a, a_glyph); diff --git a/src/hb-ot-shape.cc b/src/hb-ot-shape.cc index bfbd533..7a93c62 100644 --- a/src/hb-ot-shape.cc +++ b/src/hb-ot-shape.cc @@ -688,7 +688,7 @@ hb_ot_position_complex (hb_ot_shape_context_t *c) { bool ret = false; unsigned int count = c->buffer->len; - bool has_positioning = hb_ot_layout_has_positioning (c->face) != 0; + bool has_positioning = (bool) hb_ot_layout_has_positioning (c->face); /* If the font has no GPOS, AND, no fallback positioning will * happen, AND, direction is forward, then when zeroing mark * widths, we shift the mark with it, such that the mark _______________________________________________ HarfBuzz mailing list HarfBuzz@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/harfbuzz