diff options
Diffstat (limited to 'libass')
-rw-r--r-- | libass/ass_rasterizer.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libass/ass_rasterizer.c b/libass/ass_rasterizer.c index 84f9a88..ee19ad4 100644 --- a/libass/ass_rasterizer.c +++ b/libass/ass_rasterizer.c @@ -669,8 +669,11 @@ static int rasterizer_fill_level(ASS_Rasterizer *rst, return 1; } if (n == 1) { + static const int test = SEGFLAG_UL_DR | SEGFLAG_EXACT_LEFT; + if (((line->flags & test) != test) == !(line->flags & SEGFLAG_DN)) + winding++; + int flag = 0; - if (line->c < 0)winding++; if (winding) flag ^= 1; if (winding - 1) |