summaryrefslogtreecommitdiffstats
path: root/libass/ass_parse.c
diff options
context:
space:
mode:
authorOleg Oshmyan <chortos@inbox.lv>2017-02-03 21:36:23 +0200
committerOleg Oshmyan <chortos@inbox.lv>2017-02-14 19:43:04 +0200
commit14586a1b2f3ae784ee2f29957b4d01207cc6c2a0 (patch)
treeb1025a0dea8412ec9df36147250a10b1dddfc59c /libass/ass_parse.c
parent81ba39f0d28a9ea9d284b031517ebd0f2684d4ff (diff)
downloadlibass-14586a1b2f3ae784ee2f29957b4d01207cc6c2a0.tar.bz2
libass-14586a1b2f3ae784ee2f29957b4d01207cc6c2a0.tar.xz
Reuse numpad2align in parse_tag
Diffstat (limited to 'libass/ass_parse.c')
-rw-r--r--libass/ass_parse.c11
1 files changed, 3 insertions, 8 deletions
diff --git a/libass/ass_parse.c b/libass/ass_parse.c
index 5cd232f..dc27bf5 100644
--- a/libass/ass_parse.c
+++ b/libass/ass_parse.c
@@ -566,14 +566,9 @@ char *parse_tag(ASS_Renderer *render_priv, char *p, char *end, double pwr)
} else if (tag("an")) {
int val = argtoi(*args);
if ((render_priv->state.parsed_tags & PARSED_A) == 0) {
- if (val >= 1 && val <= 9) {
- int v = (val - 1) / 3; // 0, 1 or 2 for vertical alignment
- if (v != 0)
- v = 3 - v;
- val = ((val - 1) % 3) + 1; // horizontal alignment
- val += v * 4;
- render_priv->state.alignment = val;
- } else
+ if (val >= 1 && val <= 9)
+ render_priv->state.alignment = numpad2align(val);
+ else
render_priv->state.alignment =
render_priv->state.style->Alignment;
render_priv->state.parsed_tags |= PARSED_A;