100l, error out if subtitle encoder failed instead of writing an AVPacket
authorReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 15 Aug 2009 00:37:31 +0000 (00:37 +0000)
committerReimar Döffinger <Reimar.Doeffinger@gmx.de>
Sat, 15 Aug 2009 00:37:31 +0000 (00:37 +0000)
with ridiculous size and thus crashing.

Originally committed as revision 19641 to svn://svn.ffmpeg.org/ffmpeg/trunk

ffmpeg.c

index e5512c2..2686e1d 100644 (file)
--- a/ffmpeg.c
+++ b/ffmpeg.c
@@ -828,6 +828,10 @@ static void do_subtitle_out(AVFormatContext *s,
         sub->pts = av_rescale_q(pts, ist->st->time_base, AV_TIME_BASE_Q);
         subtitle_out_size = avcodec_encode_subtitle(enc, subtitle_out,
                                                     subtitle_out_max_size, sub);
         sub->pts = av_rescale_q(pts, ist->st->time_base, AV_TIME_BASE_Q);
         subtitle_out_size = avcodec_encode_subtitle(enc, subtitle_out,
                                                     subtitle_out_max_size, sub);
+        if (subtitle_out_size < 0) {
+            fprintf(stderr, "Subtitle encoding failed\n");
+            av_exit(1);
+        }
 
         av_init_packet(&pkt);
         pkt.stream_index = ost->index;
 
         av_init_packet(&pkt);
         pkt.stream_index = ost->index;