[FFmpeg-devel] [PATCH 2/2] avcodec/movtextenc: Don't presume every style to have a font
Andreas Rheinhardt
andreas.rheinhardt at gmail.com
Fri Oct 16 17:40:35 EEST 2020
Fixes segfaults in the absence of fonts; this can happen because the
file didn't contain any or because the allocation of the font-string
failed.
Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt at gmail.com>
---
Do ASS files actually have to prescribe the font?
libavcodec/movtextenc.c | 8 ++++++--
1 file changed, 6 insertions(+), 2 deletions(-)
diff --git a/libavcodec/movtextenc.c b/libavcodec/movtextenc.c
index 3cf308aac8..dc2715951f 100644
--- a/libavcodec/movtextenc.c
+++ b/libavcodec/movtextenc.c
@@ -279,10 +279,14 @@ static int encode_sample_description(AVCodecContext *avctx)
// is avaiable in the ASS header
if (style && ass->styles_count) {
// Find unique font names
- av_dynarray_add(&s->fonts, &s->font_count, style->font_name);
- font_names_total_len += strlen(style->font_name);
+ if (style->font_name) {
+ av_dynarray_add(&s->fonts, &s->font_count, style->font_name);
+ font_names_total_len += strlen(style->font_name);
+ }
for (i = 0; i < ass->styles_count; i++) {
int found = 0;
+ if (!ass->styles[i].font_name)
+ continue;
for (j = 0; j < s->font_count; j++) {
if (!strcmp(s->fonts[j], ass->styles[i].font_name)) {
found = 1;
--
2.25.1
More information about the ffmpeg-devel
mailing list