summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorrcombs <rcombs@rcombs.me>2022-07-26 23:02:34 -0500
committerrcombs <rcombs@rcombs.me>2022-11-15 21:14:37 -0600
commitbcc86020e1c13aadebc1c23a83f95085a8b70a28 (patch)
treea499ff2feab0c80026ab8934e0a4888e82ae0485
parent5ed92677c3f3399eb0cf436e85527e2897e0a924 (diff)
downloadlibass-bcc86020e1c13aadebc1c23a83f95085a8b70a28.tar.bz2
libass-bcc86020e1c13aadebc1c23a83f95085a8b70a28.tar.xz
ass_render: take RenderContext* in reorder_text()
-rw-r--r--libass/ass_render.c9
1 files changed, 5 insertions, 4 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index 58b5465..76c1410 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -2230,14 +2230,15 @@ static void preliminary_layout(ASS_Renderer *render_priv)
}
// Reorder text into visual order
-static void reorder_text(ASS_Renderer *render_priv)
+static void reorder_text(RenderContext *state)
{
- TextInfo *text_info = &render_priv->text_info;
+ ASS_Renderer *render_priv = state->renderer;
+ TextInfo *text_info = state->text_info;
FriBidiStrIndex *cmap = ass_shaper_reorder(render_priv->shaper, text_info);
if (!cmap) {
ass_msg(render_priv->library, MSGL_ERR, "Failed to reorder text");
ass_shaper_cleanup(render_priv->shaper, text_info);
- free_render_context(&render_priv->state);
+ free_render_context(state);
return;
}
@@ -2855,7 +2856,7 @@ ass_render_event(ASS_Renderer *render_priv, ASS_Event *event,
// depends on glyph x coordinates being monotonous within runs, so it should be done before reorder
ass_process_karaoke_effects(state);
- reorder_text(render_priv);
+ reorder_text(state);
align_lines(state, max_text_width);