diff options
Diffstat (limited to 'libass/ass_render.c')
-rw-r--r-- | libass/ass_render.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/libass/ass_render.c b/libass/ass_render.c index b88bf22..f6e3879 100644 --- a/libass/ass_render.c +++ b/libass/ass_render.c @@ -2837,10 +2837,13 @@ static int fit_segment(Segment *s, Segment *fixed, int *cnt, int dir) static void fix_collisions(ASS_Renderer *render_priv, EventImages *imgs, int cnt) { - Segment *used = malloc(cnt * sizeof(*used)); + Segment *used = ass_realloc_array(NULL, cnt, sizeof(*used)); int cnt_used = 0; int i, j; + if (!used) + return; + // fill used[] with fixed events for (i = 0; i < cnt; ++i) { ASS_RenderPriv *priv; |