From: Behdad Esfahbod Date: Sat, 10 Sep 2016 09:11:05 +0000 (-0700) Subject: [GX] Remove (partial) support for anisotropic variations X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=26648cebcd14bd26142ccfe5ac8c0be08a213671;p=platform%2Fupstream%2FlibHarfBuzzSharp.git [GX] Remove (partial) support for anisotropic variations It doesn't always work, not part of FreeType, and we were not going to expose it in the API anyway. Can always be added later. --- diff --git a/src/hb-font-private.hh b/src/hb-font-private.hh index 48dc725..53671d7 100644 --- a/src/hb-font-private.hh +++ b/src/hb-font-private.hh @@ -110,8 +110,7 @@ struct hb_font_t { /* Font variation coordinates. */ unsigned int num_coords; - int *x_coords; - int *y_coords; + int *coords; hb_font_funcs_t *klass; void *user_data; diff --git a/src/hb-font.cc b/src/hb-font.cc index 24ecb45..f12dfb5 100644 --- a/src/hb-font.cc +++ b/src/hb-font.cc @@ -1197,8 +1197,7 @@ hb_font_get_empty (void) 0, /* y_ppem */ 0, /* num_coords */ - NULL, /* x_coords */ - NULL, /* y_coords */ + NULL, /* coords */ const_cast (&_hb_font_funcs_nil), /* klass */ NULL, /* user_data */ @@ -1254,10 +1253,8 @@ hb_font_destroy (hb_font_t *font) hb_face_destroy (font->face); hb_font_funcs_destroy (font->klass); - if (font->x_coords) - free (font->x_coords); - if (font->y_coords && font->y_coords != font->x_coords) - free (font->y_coords); + if (font->coords) + free (font->coords); free (font); } @@ -1564,15 +1561,13 @@ hb_font_set_var_coords_normalized (hb_font_t *font, if (unlikely (coords_length && !copy)) return; - if (font->x_coords) - free (font->x_coords); - if (font->y_coords && font->y_coords != font->x_coords) - free (font->y_coords); + if (font->coords) + free (font->coords); if (coords_length) memcpy (copy, coords, coords_length * sizeof (coords[0])); - font->x_coords = font->y_coords = copy; + font->coords = copy; font->num_coords = coords_length; } diff --git a/src/hb-ot-layout-common-private.hh b/src/hb-ot-layout-common-private.hh index fb99ec3..3c574af 100644 --- a/src/hb-ot-layout-common-private.hh +++ b/src/hb-ot-layout-common-private.hh @@ -1584,10 +1584,10 @@ struct VariationDevice private: inline hb_position_t get_x_delta (hb_font_t *font, const VariationStore &store) const - { return font->em_scalef_x (get_delta (store, font->x_coords, font->num_coords)); } + { return font->em_scalef_x (get_delta (font, store)); } inline hb_position_t get_y_delta (hb_font_t *font, const VariationStore &store) const - { return font->em_scalef_y (get_delta (store, font->y_coords, font->num_coords)); } + { return font->em_scalef_y (get_delta (font, store)); } inline bool sanitize (hb_sanitize_context_t *c) const { @@ -1597,10 +1597,9 @@ struct VariationDevice private: - inline float get_delta (const VariationStore &store, - int *coords, unsigned int coord_count) const + inline float get_delta (hb_font_t *font, const VariationStore &store) const { - return store.get_delta (outerIndex, innerIndex, coords, coord_count); + return store.get_delta (outerIndex, innerIndex, font->coords, font->num_coords); } protected: