summaryrefslogtreecommitdiffstats
path: root/libass/ass_render.c
diff options
context:
space:
mode:
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r--libass/ass_render.c13
1 files changed, 9 insertions, 4 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c
index df75aeb76e..5191f15471 100644
--- a/libass/ass_render.c
+++ b/libass/ass_render.c
@@ -839,10 +839,15 @@ static char* parse_tag(char* p, double pwr) {
v2 = strtol(p, &p, 10);
skip(')');
mp_msg(MSGT_ASS, MSGL_DBG2, "pos(%d, %d)\n", v1, v2);
- render_context.evt_type = EVENT_POSITIONED;
- render_context.detect_collisions = 0;
- render_context.pos_x = v1;
- render_context.pos_y = v2;
+ if (render_context.evt_type == EVENT_POSITIONED) {
+ mp_msg(MSGT_ASS, MSGL_V, "Subtitle has a new \\pos "
+ "after \\move or \\pos, ignoring\n");
+ } else {
+ render_context.evt_type = EVENT_POSITIONED;
+ render_context.detect_collisions = 0;
+ render_context.pos_x = v1;
+ render_context.pos_y = v2;
+ }
} else if (mystrcmp(&p, "fad")) {
int a1, a2, a3;
long long t1, t2, t3, t4;