diff options
author | Dr.Smile <vabnick@gmail.com> | 2017-09-17 03:00:34 +0300 |
---|---|---|
committer | Dr.Smile <vabnick@gmail.com> | 2017-09-17 04:07:20 +0300 |
commit | f159a8cf55c8b3f2193ab20159a255310c7c5ca9 (patch) | |
tree | 53da5b52088cae27897b3cb6893ef65630aea892 /libass/ass_parse.c | |
parent | 218ee0b2ab23e3f127b77579c57e9097a5ac6056 (diff) | |
download | libass-f159a8cf55c8b3f2193ab20159a255310c7c5ca9.tar.bz2 libass-f159a8cf55c8b3f2193ab20159a255310c7c5ca9.tar.xz |
Replace FreeType types with libass native types
FT_Vector and FT_BBox types are based on FT_Pos, which is alias of long.
FreeType treats it as 32-bit integer, but on some platforms long can be
64-bit. That leads to wasted memory and suboptimal performance.
Diffstat (limited to 'libass/ass_parse.c')
-rw-r--r-- | libass/ass_parse.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/libass/ass_parse.c b/libass/ass_parse.c index 80d4bfc..c83634a 100644 --- a/libass/ass_parse.c +++ b/libass/ass_parse.c @@ -211,8 +211,7 @@ static int parse_vector_clip(ASS_Renderer *render_priv, struct arg text = args[nargs - 1]; ass_drawing_free(drawing); - render_priv->state.clip_drawing = - ass_drawing_new(render_priv->library, render_priv->ftlibrary); + render_priv->state.clip_drawing = ass_drawing_new(render_priv->library); drawing = render_priv->state.clip_drawing; if (drawing) { drawing->scale = scale; @@ -957,8 +956,8 @@ void process_karaoke_effects(ASS_Renderer *render_priv) x_start = 1000000; x_end = -1000000; for (cur2 = s1; cur2 <= e1; ++cur2) { - x_start = FFMIN(x_start, d6_to_int(cur2->bbox.xMin + cur2->pos.x)); - x_end = FFMAX(x_end, d6_to_int(cur2->bbox.xMax + cur2->pos.x)); + x_start = FFMIN(x_start, d6_to_int(cur2->bbox.x_min + cur2->pos.x)); + x_end = FFMAX(x_end, d6_to_int(cur2->bbox.x_max + cur2->pos.x)); } dt = (tm_current - tm_start); |