summaryrefslogtreecommitdiffstats
path: root/libass/ass_utils.c
diff options
context:
space:
mode:
Diffstat (limited to 'libass/ass_utils.c')
-rw-r--r--libass/ass_utils.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/libass/ass_utils.c b/libass/ass_utils.c
index fef8030..ce57bb3 100644
--- a/libass/ass_utils.c
+++ b/libass/ass_utils.c
@@ -437,11 +437,12 @@ static uint32_t ass_read_utf16be(uint8_t **src, size_t bytes)
goto too_short;
uint32_t cp2 = ((*src)[0] << 8) | (*src)[1];
- *src += 2;
if (cp2 < 0xDC00 || cp2 > 0xDFFF)
return 0xFFFD;
+ *src += 2;
+
cp = 0x10000 + ((cp - 0xD800) << 10) + (cp2 - 0xDC00);
}