summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--libass/ass_drawing.c5
1 files changed, 4 insertions, 1 deletions
diff --git a/libass/ass_drawing.c b/libass/ass_drawing.c
index fec9de2..f94d0e4 100644
--- a/libass/ass_drawing.c
+++ b/libass/ass_drawing.c
@@ -58,8 +58,11 @@ static inline void drawing_add_point(ASS_Drawing *drawing,
static inline void drawing_close_shape(ASS_Drawing *drawing)
{
FT_Outline *ol = &drawing->outline;
- if (ol->n_contours == SHRT_MAX)
+ if (ol->n_contours == SHRT_MAX) {
+ if (ol->n_points)
+ ol->contours[ol->n_contours] = ol->n_points - 1;
return;
+ }
if (ol->n_contours >= drawing->max_contours) {
drawing->max_contours *= 2;