Re: [FFmpeg-devel] [PATCH 3/3] avformat/hls: Add missing error check for avcodec_parameters_copy()

2016-11-06 Thread Andreas Cadhalpun
On 06.11.2016 22:44, Anssi Hannula wrote:
> Signed-off-by: Anssi Hannula 
> ---
>  libavformat/hls.c | 18 ++
>  1 file changed, 14 insertions(+), 4 deletions(-)
> 

This misses checking the return code of the other occurrence of
set_stream_info_from_input_stream in hls_read_packet.

Best regards,
Andreas

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel


[FFmpeg-devel] [PATCH 3/3] avformat/hls: Add missing error check for avcodec_parameters_copy()

2016-11-06 Thread Anssi Hannula
Signed-off-by: Anssi Hannula 
---
 libavformat/hls.c | 18 ++
 1 file changed, 14 insertions(+), 4 deletions(-)

diff --git a/libavformat/hls.c b/libavformat/hls.c
index ce52bf5..a744908 100644
--- a/libavformat/hls.c
+++ b/libavformat/hls.c
@@ -1528,9 +1528,13 @@ static void add_stream_to_programs(AVFormatContext *s, 
struct playlist *pls, AVS
 av_dict_set_int(>metadata, "variant_bitrate", bandwidth, 0);
 }
 
-static void set_stream_info_from_input_stream(AVStream *st, struct playlist 
*pls, AVStream *ist)
+static int set_stream_info_from_input_stream(AVStream *st, struct playlist 
*pls, AVStream *ist)
 {
-avcodec_parameters_copy(st->codecpar, ist->codecpar);
+int err;
+
+err = avcodec_parameters_copy(st->codecpar, ist->codecpar);
+if (err)
+return err;
 
 if (pls->is_id3_timestamped) /* custom timestamps via id3 */
 avpriv_set_pts_info(st, 33, 1, MPEG_TIME_BASE);
@@ -1538,11 +1542,15 @@ static void set_stream_info_from_input_stream(AVStream 
*st, struct playlist *pls
 avpriv_set_pts_info(st, ist->pts_wrap_bits, ist->time_base.num, 
ist->time_base.den);
 
 st->internal->need_context_update = 1;
+
+return 0;
 }
 
 /* add new subdemuxer streams to our context, if any */
 static int update_streams_from_subdemuxer(AVFormatContext *s, struct playlist 
*pls)
 {
+int err;
+
 while (pls->n_main_streams < pls->ctx->nb_streams) {
 int ist_idx = pls->n_main_streams;
 AVStream *st = avformat_new_stream(s, NULL);
@@ -1552,11 +1560,13 @@ static int 
update_streams_from_subdemuxer(AVFormatContext *s, struct playlist *p
 return AVERROR(ENOMEM);
 
 st->id = pls->index;
-set_stream_info_from_input_stream(st, pls, ist);
-
 dynarray_add(>main_streams, >n_main_streams, st);
 
 add_stream_to_programs(s, pls, st);
+
+err = set_stream_info_from_input_stream(st, pls, ist);
+if (err)
+return err;
 }
 
 return 0;
-- 
2.7.4

___
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
http://ffmpeg.org/mailman/listinfo/ffmpeg-devel